function update() { $rep = $this->getResponse('json'); $this->msg = 'Votre Version de Business Open Suite est déjà à jours'; $project = simplexml_load_file('project.xml'); $local_version = $project->info->version->__toString(); $data = array('module' => 'bos', 'action' => 'updater:info'); $bos_info = jHttp::quickPost(UPDATE_URL . 'index.php', $data); $bos_info = json_decode($bos_info); if ($bos_info->version != $local_version) { $tempname = uniqid() . '.zip'; $bos = jHttp::quickGet(UPDATE_URL . 'bos.zip'); file_put_contents('var/uploads/' . $tempname, $bos); $this->unpackUpdate('var/uploads/' . $tempname); unlink('var/uploads/' . $tempname); $this->msg = 'votre version de Business Open Suite a été mise à jours'; $this->success = true; } $rep->data = array('success' => $this->success, 'msg' => $this->msg); return $rep; }
/** * read an flux with an url parameter * @param string $url */ public function __construct($url) { try { $stream = jHttp::quickGet($url); } catch (Exception $e) { throw new jException('jelix~errors.xml.remote.feed.error'); } if (!$stream) { throw new jException('jelix~errors.xml.remote.feed.error'); } libxml_use_internal_errors(true); $xml = simplexml_load_string($stream); if ($xml === false) { $errors = ''; foreach (libxml_get_errors() as $error) { $errors .= $error->message . "; "; } throw new jException('jelix~errors.xml.loading.document.error', array($errors)); } libxml_use_internal_errors(); libxml_clear_errors(); $this->xml = $xml; }