public function saveAction() { $contactform = new Contactform(); $this->view->disable(); $request = new \Phalcon\Http\Request(); if ($request->isPost() == true) { $data = array(); $contactform->name = $this->request->getPost("name"); $contactform->email = $this->request->getPost("email"); $contactform->subject = $this->request->getPost("subject"); $contactform->message = $this->request->getPost("message"); if ($contactform->save()) { $result['state'] = 'success'; $result['message'] = 'Your message has been received'; } else { $result['state'] = 'failure'; foreach ($contactform->getMessages() as $message) { $result['message'][] = $message; } } echo json_encode($result); if ($request->isAjax() == true) { } } }
public function createaccountAction() { $request = new \Phalcon\Http\Request(); if ($request->isPost()) { $user = new users(); $user->name = $this->request->getPost("name"); $user->email = $this->request->getPost("email"); $user->password = $this->request->getPost("password"); $user->apiKey = $this->generateAPIKey(); $user->regID = "NULL"; if ($user->save()) { echo 'success'; } else { echo 'An error occured'; } } else { echo "\n <form action=\"/users/createaccount\" method=\"post\">\n Name:<br>\n <input type=\"text\" id=\"name\" name=\"name\"><br>\n Email:<br>\n <input type=\"text\" name=\"email\"><br>\n Password:<br>\n <input type=\"password\" name=\"password\"><br>\n <br>\n <input type=\"submit\" value=\"Submit\">\n </form>\n\n\n "; } }
/** * Delete Todo * action from post * call JSON -> check id, if not id Insert -> write JSON * @author Jack <*****@*****.**> * @created_date 2015-11-06 * @updated_date 2015-11-06 * @return [type] [description] */ public function delAction() { $request = new \Phalcon\Http\Request(); // check is post if ($request->isPost()) { $id = $request->getPost('id'); $json = file_get_contents($this->schema); $variable = json_decode($json); foreach ($variable->data as $key => $value) { if ($value->id != $id) { $data[$key]['id'] = $value->id; $data[$key]['created'] = $value->created; $data[$key]['name'] = $value->name; $data[$key]['job'] = $value->job; } } $insertData['data'] = $data; $variable = json_encode($insertData); file_put_contents($this->schema, $variable); } else { return false; } }
<?php $request = new Phalcon\Http\Request(); if ($request->isPost() == true) { if ($request->isAjax() == true) { echo 'Request was made using POST and AJAX'; } }
public function saveAction($r_controller = null, $r_action = null, $r_id = null) { set_time_limit(180); ini_set('memory_limit', '512M'); $request = new \Phalcon\Http\Request(); $response = new \Phalcon\Http\Response(); $previousURL = 'mapfile/process'; if (!$request->isPost()) { return $response->redirect($this->cancelURL); } $layers = $this->session->get('processData'); if (!$layers) { return $response->redirect($this->cancelURL); } //Check if a context shoud be created $creer_contexte = $request->getPost('creer_contexte', null); $igoContexte = null; if ($creer_contexte) { $contexteName = trim($request->getPost('name', null)); $contexteCode = trim($request->getPost('code', null)); $contexteDescription = trim($request->getPost('description', null)); $onlineResource = trim($request->getPost('onlineResource', null)); if (!$contexteName) { $this->flashSession->error('Veuillez indiquer un nom de contexte.'); } if (!$contexteCode) { $this->flashSession->error('Veuillez indiquer un code de contexte.'); } if (!$contexteDescription) { $this->flashSession->error('Veuillez indiquer une description du contexte.'); } if (!$onlineResource) { $this->flashSession->error('Veuillez indiquer la resource en ligne.'); } $mapServerConfig = $this->getDI()->getConfig()->mapserver; $fileName = $mapServerConfig->mapfileCacheDir . $mapServerConfig->contextesCacheDir . trim($contexteCode) . ".map"; if (file_exists($fileName)) { $this->flash->error("Le fichier {$fileName} existe déjà. Choisissez un autre code."); } $this->session->set('contexteName', $contexteName); $this->session->set('contexteCode', $contexteCode); $this->session->set('contexteDescription', $contexteDescription); $this->session->set('onlineResource', $onlineResource); if ($this->flashSession->has('error')) { return $response->redirect($previousURL); } $igoContexte = new IgoContexte(); $mapfileData = $this->session->get('mapfileData'); // Substitude contexteCode if provided $onlineResource = str_replace("{Code}", $contexteCode, $onlineResource); $igoContexte->mf_map_meta_onlineresource = $onlineResource; $igoContexte->mf_map_projection = $mapfileData['map']['projection']; $igoContexte->nom = $contexteName; $igoContexte->code = $contexteCode; $igoContexte->description = $contexteDescription; $igoContexte->mode = "l"; //mode Liste $igoContexte->generer_onlineresource = true; } //Save the layers (and optionally a context) $mapfileParser = new MapfileParser(); $data = $mapfileParser->formatSaveData($layers, $this->view->host, $this->view->host_alias); try { $this->save($data, $igoContexte); $this->flashSession->success('Sauvegarde effectuée avec succès!'); } catch (Exception $e) { $this->flashSession->error($e->getMessage()); return $response->redirect($previousURL); } $this->clearSession(); }
function wms_proxy($contexteId) { global $app; $httprequest = new Phalcon\Http\Request(); $httprequest->setDI($app->getDI()); //Possible sanitize filters: string, email, int, float, alphanum, striptags, trim, lower, upper $filter = new \Phalcon\Filter(); if ($httprequest->isGet() || $httprequest->isPost()) { $datain = $httprequest->get(); $data = array(); foreach ($datain as $key => $value) { $data[strtoupper($key)] = $value; } $service = $filter->sanitize($data["SERVICE"], array("string", "upper")); $request = $filter->sanitize($data["REQUEST"], array("string", "upper")); } else { // TODO : Gérer l'erreur, on ne peut appeler un service wms en put ou en delete. error_log("not a get or a post?"); return; } error_log("service: {$service}, request: {$request}"); if ($service === "WMS") { $config = $app->getDI()->get("config"); $mapserver = $config['mapserver']['host'] . $config['mapserver']['mapserver_path'] . $config['mapserver']['executable']; $contexte = IgoContexte::findFirst("id='{$contexteId}'"); $map = $config['mapserver']['mapfileCacheDir'] . $config['mapserver']['contextesCacheDir'] . $contexte->code . ".map"; $method = $httprequest->getMethod(); $data = $httprequest->get(); $data["MAP"] = $map; $response = null; switch ($request) { case "GETCAPABILITIES": $response = proxy_request($mapserver, $data, $method); // Devrait-on enlever les couches non permises en lecture de la réponse.? C'est probablement trop complexe... break; case "GETMAP": case "GETFEATUREINFO": case "DESCRIBELAYER": case "GETLEGENDGRAPHIC": $authentificationModule = obtenirAuthentificationModule(); if ($authentificationModule === null) { $response = proxy_request($mapserver, $data, $method); } else { if (isset($data["LAYERS"])) { $couches = explode(",", $data["LAYERS"]); } else { $couches = explode(",", $data["LAYER"]); } foreach ($couches as $couche) { $igoVueContexteCoucheNavigateur = IgoVueContexteCoucheNavigateur::findFirst("mf_layer_name='{$couche}'"); $coucheContexte = array($igoVueContexteCoucheNavigateur); if ($igoVueContexteCoucheNavigateur === false) { $coucheContexte = IgoVueContexteCoucheNavigateur::find("mf_layer_group='{$couche}' and contexte_id='{$contexteId}'"); } if (count($coucheContexte) === 0) { // L'utilisateur essaie d'appeler la couche root du mapfile qui consiste à toutes les couches. // Nous interdissons ce type d'appels pour le moment. die("Forbidden"); } $estPermis = false; foreach ($coucheContexte as $igoVueContexteCoucheNavigateur) { $permission = obtenirPermission($igoVueContexteCoucheNavigateur->couche_id); if ($permission !== null && $permission->est_lecture) { $estPermis = true; break; } } if (!$estPermis) { die("Forbidden"); } } $response = proxy_request($mapserver, $data, $method); } break; default: break; } $headerArray = explode("\r\n", $response["header"]); foreach ($headerArray as $headerLine) { header($headerLine); } echo $response["content"]; } else { die("Seul les services WMS sont pris en charge par ce proxy."); } }
public function accesAction() { $request = new \Phalcon\Http\Request(); if ($request->isPost()) { $this->session->get("info_utilisateur")->profilActif = $request->getPost('profil', null); } return $this->redirigeVersPage(); }
/** * Get User Action: receives a user's email address and responds with the user's full name */ public function getconversationrecipientAction() { $this->view->setRenderLevel(\Phalcon\Mvc\View::LEVEL_NO_RENDER); $request = new \Phalcon\Http\Request(); if ($request->isPost()) { //The request is post, therefore it is receiving data //Data is in JSON format $data = json_decode(file_get_contents('php://input'), true); //print_r($data); $user = users::findFirst(array("conditions" => 'id = :idVal: and apiKey = :keyVal:', 'bind' => array('idVal' => $data['userid'], 'keyVal' => $data['user_api_key']))); if ($user) { $conversation = conversations::findFirst(array("conditions" => 'id = :idVal', "bind" => array("idVal" => $data['targetID']))); if ($conversation->user1 == $user->id) { $recipient = $conversation->user1; } else { $recipient = $conversation->user2; } $user = users::findFirst(array("conditions" => "id = :idVal:", "bind" => array("idVal" => $recipient))); $array['fullname'] = $user->firstName . " " . $user->lastName; echo json_encode($array); } } }
public function saveAction($r_controller = null, $r_action = null, $r_id = null) { set_time_limit(180); ini_set('memory_limit', '512M'); $request = new \Phalcon\Http\Request(); $response = new \Phalcon\Http\Response(); $previousURL = 'mapfile/process'; if ($request->isPost() == true) { if ($layers = $this->session->get('processData')) { //Check if a context shoud be created $contexte = $request->getPost('contexte', null); $igoContexte = null; if ($contexte && $contexte == 1) { $contexteName = $request->getPost('name', null); $contexteCode = $request->getPost('code', null); $contexteDescription = $request->getPost('description', null); $onlineResource = $request->getPost('onlineResource', null); $missingParameter = false; if (!$contexteName || strlen(trim($contexteName)) == 0) { $this->flashSession->error('Veuillez entrer un nom de contexte.'); $missingParameter = true; } if (!$contexteCode || strlen(trim($contexteCode)) == 0) { $this->flashSession->error('Veuillez entrer un code de contexte.'); $missingParameter = true; } if (!$contexteDescription || strlen(trim($contexteDescription)) == 0) { $this->flashSession->error('Veuillez entrer une description du contexte.'); $missingParameter = true; } if (!$onlineResource || strlen(trim($onlineResource)) == 0) { $this->flashSession->error('Veuillez entré la resource en ligne.'); $missingParameter = true; } $this->session->set('contexteName', $contexteName); $this->session->set('contexteCode', $contexteCode); $this->session->set('contexteDescription', $contexteDescription); $this->session->set('onlineResource', $onlineResource); if ($missingParameter) { return $response->redirect($previousURL); } $mapServerConfig = $this->getDI()->getConfig()->mapserver; $fileName = $mapServerConfig->mapfileCacheDir . $mapServerConfig->contextesCacheDir . trim($contexteCode) . ".map"; if (file_exists($fileName)) { $this->flash->error("le fichier {$fileName} existe déjà!"); return $this->dispatcher->forward(array("controller" => $this->ctlName, "action" => "new", "param" => !is_null($r_id) ? "/" . $r_controller . "/" . $r_action . "/" . $r_id : "")); } $igoContexte = new IgoContexte(); $mapfileData = $this->session->get('mapfileData'); // Online Resource for generated mapfile will be initialised by default to the mapserv.fcgi path and the generated mapfile path. // $onlineResource = $mapfileData['map']['wms_onlineresource']; // if (strpos(strtolower($onlineResource), strtolower($this->view->host)) !== false) { // $igoContexte->mf_map_meta_onlineresource = $onlineResource; // } else { // if ($onlineResource && $onlineResource != '') { // $contexteDescription .= ' (' . $onlineResource . ')'; // } // } //$mapserverConfiguration = $this->getDI()->getConfig()->mapserver; //$onlineResource = $mapserverConfiguration->host . $mapserverConfiguration->mapserver_path . "?" . $mapserverConfiguration->mapfileCacheDir . $contexteCode . ".map"; $onlineResource = trim($onlineResource); // contains {Code}.map if (strpos($onlineResource, '{Code}') !== FALSE) { if ($onlineResource) { $onlineResource = str_replace("{Code}", $contexteCode, $onlineResource); } } $igoContexte->mf_map_meta_onlineresource = $onlineResource; //$igoContexte->mf_map_meta_onlineresource = trim($onlineResource); $igoContexte->mf_map_projection = $mapfileData['map']['projection']; $igoContexte->nom = trim($contexteName); $igoContexte->code = trim($contexteCode); $igoContexte->description = trim($contexteDescription); $igoContexte->mode = "l"; $igoContexte->generer_onlineresource = true; } //Save the layers (and optionally a context) $mapfileParser = new MapfileParser(); $data = $mapfileParser->formatSaveData($layers, $this->view->host, $this->view->host_alias); try { $this->save($data, $igoContexte); $this->flashSession->success('Sauvegarde effectuée avec succès!'); } catch (Exception $e) { $this->flashSession->error($e->getMessage()); return $response->redirect($previousURL); } //Clear session $this->session->set('mapfile', null); $this->session->set('mapfileData', null); $this->session->set('selectData', null); $this->session->set('processData', null); $this->session->set('contexteName', null); $this->session->set('contexteCode', null); $this->session->set('contexteDescription', null); $this->session->set('onlineResource', null); } else { return $response->redirect($this->cancelURL); } } else { return $response->redirect($this->cancelURL); } }
function uploads($upload_dir, $size = 2097152, $type = array('jpg', 'png')) { $request = new \Phalcon\Http\Request(); if (true != $request->isPost()) { return false; } if ($request->hasFiles()) { $upload_dir = trim($upload_dir, '/\\') . DIRECTORY_SEPARATOR . date('Y-m-d'); if (!file_exists($upload_dir)) { mkdir($upload_dir, 777, true); } $php_post_max_size = (int) ini_get('post_max_size') * 1024 * 1024; $php_upload_max_filesize = (int) ini_get('upload_max_filesize') * 1024 * 1024; if ($php_post_max_size < $size) { logWarning('PHP php_post_max_size < uploads\'s Size'); throw new \Exception('php.ini php_post_max_size 上传文件大小未设置'); } if ($php_upload_max_filesize < $size) { logWarning('PHP php_upload_max_filesize < uploads\'s Size'); throw new \Exception('php.ini php_upload_max_filesize 上传文件大小未设置'); } foreach ($request->getUploadedFiles() as $file) { if ($file->getError() != 0) { continue; } if (!in_array($file->getExtension(), $type)) { $upload_errors[] = array('error' => UPLOADS_ERROR_10001, 'key' => $file->getKey()); break; } if ($file->getSize() > $size) { $upload_errors[] = array('error' => UPLOADS_ERROR_10002, 'key' => $file->getKey()); break; } $file_name = uniqid() . time() . mt_rand(10000, 999999) . '.' . $file->getExtension(); if ($file->moveTo($upload_dir . DIRECTORY_SEPARATOR . $file_name)) { $files[$file->getKey()] = $upload_dir . DIRECTORY_SEPARATOR . $file_name; } } if (isset($upload_errors)) { if (isset($files)) { foreach ($files as $val) { if (!unlink(ROOT_DIR . DIRECTORY_SEPARATOR . $val)) { logWarning('delete upload file error ::' . $val); } } } return $upload_errors; } if (isset($files) && is_array($files) && count($files) > 0) { return $files; } } return false; }