Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class App extends CI_Controller
- {
- private $date_format = "d/m/Y H:i:s";
- public function __construct()
- {
- // Obligatoire
- parent::__construct();
- $this->requireAuthentication();
- }
- private function requireAuthentication()
- {
- if (!$this->session->userdata('admin_id'))
- {
- $controller = $this->uri->segment(1);
- redirect('login/' . $controller);
- }
- }
- public function add() {
- $this->load->library('layout');
- $this->layout->set_theme('default');
- $this->layout->add_css("bootstrap.min.css");
- $this->layout->add_css("font-awesome.min.css");
- $this->layout->add_css("bootstrap-switch.min.css");
- $this->layout->add_css("datepicker.css");
- $this->layout->add_css("style.css");
- $this->layout->add_js("jquery-1.11.0.min.js");
- $this->layout->add_js("bootstrap.min.js");
- $this->layout->add_js("bootstrap-datepicker.js");
- $this->layout->add_js("bootstrap-switch.min.js");
- $this->layout->add_js("jquery.lazyload.js");
- $this->layout->add_js("typeahead.bundle.min.js");
- $this->layout->add_js("validator.js");
- $this->layout->add_js("filter.js");
- $this->layout->add_js("main.js");
- $this->layout->add_js("form.js");
- $this->layout->add_js("admins.js");
- $data['iOSVersion'] = $this->app_model->getIOSVersion();
- $data['windowsVersion'] = $this->app_model->getWindowsVersion();
- $data['iOSUrl'] = $this->app_model->getIOSAppDownloadUrl();
- $data['windowsUrl'] = $this->app_model->getWindowsAppDownloadUrl();
- $data['errmsg'] = '';
- if($_POST) {
- $version = $_POST['version'];
- $os = $_POST['os'];
- if (strcmp($os ,'Windows') == 0)
- {
- $id = substr($data['windowsUrl'], -1);
- }
- if (strcmp($os ,'iOS') == 0)
- {
- $id = substr($data['iOSUrl'], -1);
- }
- if (strcmp($os ,'Test') == 0)
- {
- $id = 6;
- }
- $url = WEBSERVICE_DISPATCHER_URL . 'upload?id={id}';
- $url = str_replace('{id}', $id, $url);
- $user = WEBSERVICE_USERNAME;
- $pass = WEBSERVICE_PASSWORD;
- $cred = sprintf('Authorization: Basic %s', base64_encode("$user:$pass") );
- $uploaddir = '/var/www/uploads/';
- $uploadfile = $uploaddir . basename($_FILES['file']['name']);
- $filename = $_FILES['file']['name'];
- $filedata = $_FILES['file']['tmp_name'];
- $filesize = $_FILES['file']['size'];
- if ($filedata != '') {
- $postfields = array();
- $postfields['file'] = new CurlFile($filedata);
- $postfields['os'] = $os;
- $postfields['version'] = $version;
- //$verbose = fopen('php://temp', 'w+');
- $ch = curl_init();
- $options = array(
- CURLOPT_URL => $url,
- CURLOPT_HEADER => true,
- CURLOPT_POST => 1,
- CURLOPT_HTTPHEADER => array(
- $cred,
- "content-type: multipart/form-data"
- ),
- CURLOPT_POSTFIELDS => $postfields,
- CURLOPT_RETURNTRANSFER => true,
- CURLOPT_TIMEOUT => 0,
- CURLOPT_VERBOSE => true,
- CURLOPT_INFILESIZE => $filesize,
- //CURLOPT_STDERR => $verbose,
- CURLOPT_SSL_VERIFYPEER => false,
- CURLOPT_SSL_VERIFYHOST => false
- ); // cURL options
- curl_setopt_array($ch, $options);
- curl_exec($ch);
- if (!curl_errno($ch)) {
- $info = curl_getinfo($ch);
- if ($info['http_code'] == 200)
- $data['errmsg'] = "File uploaded successfully";
- if (strcmp($os ,'Windows') == 0)
- $data['windowsVersion'] = $version;
- if (strcmp($os ,'iOS') == 0)
- $data['iOSVersion'] = $version;
- } else {
- $data['errmsg'] = curl_error($ch);
- printf("cUrl error (#%d): %s<br>\n", curl_errno($ch),
- htmlspecialchars(curl_error($ch)));
- }
- curl_close($ch);
- rewind($verbose);
- $verboseLog = stream_get_contents($verbose);
- echo "Verbose information:\n<pre>", htmlspecialchars($verboseLog), "</pre>\n";
- } else {
- $data['errmsg'] = "Please select the file";
- }
- }
- $this->layout->view('app/add', $data);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement