diff --git a/.gitignore b/.gitignore index 5b50eef7f1e889e05590c55e2db6bdfe683f9940..4356eae274bf9e5bb685b9a3db5c1b2dfbee4d3d 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ apps/maarch_entreprise/xml/log4php.xml .phplint.yml fonctionnel.log technique.log +xdelete.sh diff --git a/apps/maarch_entreprise/tmp/test/test_source.txt b/apps/maarch_entreprise/tmp/test/test_source.txt new file mode 100644 index 0000000000000000000000000000000000000000..76425fca8854d5a3fdf61ce02a03e6b91b0e87c3 --- /dev/null +++ b/apps/maarch_entreprise/tmp/test/test_source.txt @@ -0,0 +1 @@ +a unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit testa unit test \ No newline at end of file diff --git a/core/Controllers/ResController.php b/core/Controllers/ResController.php index c8583d8b35883d5dbb9d3ee5c27f958eccb1c221..55c35742345915bb83cbcf2bef021436dd100b83 100644 --- a/core/Controllers/ResController.php +++ b/core/Controllers/ResController.php @@ -24,6 +24,30 @@ use Core\Controllers\DocserverController; class ResController { + public function create(RequestInterface $request, ResponseInterface $response, $aArgs) + { + if (!empty($aArgs)) { + $aArgs = $aArgs; + } else { + $aArgs = $request->getQueryParams(); + //print_r($aArgs['data']); + $aArgs['data'] = json_decode($aArgs['data']); + $aArgs['data'] = $this->object2array($aArgs['data']); + //print_r($aArgs['data']);exit; + } + + $return = $this->storeResource($aArgs); + + if ($return['errors']) { + return $response + ->withStatus(500) + ->withJson( + ['errors' => _NOT_CREATE . ' ' . $return['errors']] + ); + } + + return $response->withJson($return); + } /** * Store resource on database. @@ -366,180 +390,205 @@ class ResController return $data; } - //TODO - public function storeExtResource($resId, $data, $table) + /** + * Store ext resource on database. + * @param $resId integer + * @param $data array + * @param $table string + * @return res_id + */ + public function storeExtResource($aArgs, $resId, $data, $table) { - try { - if ($resId <> "") { - $func = new functions(); - $data = $func->object2array($data); - $queryExtFields = '('; - $queryExtValues = '('; - $queryExtValuesFinal = '('; - $parameters = array(); - $db = new Database(); - $findProcessLimitDate = false; - $findProcessNotes = false; - $delayProcessNotes = 0; - - for ($i = 0; $i < count($data); $i++) { - if ($data[$i]['column'] == 'process_limit_date') { - $findProcessLimitDate = true; - } - // if ($data[$i]['column'] == 'process_notes') { - // $findProcessNotes = true; - // $delayProcessNotes = $data[$i]['value']; - // } - if ($data[$i]['column'] == 'process_notes') { - $findProcessNotes = true; - $donnees = explode(',', $data[$i]['value']); - $delayProcessNotes = $donnees['0']; - $calendarType = $donnees['1']; - } - } + if (empty($aArgs['resId'])) { + return ['errors' => 'resId ' . _EMPTY]; + } - if ($table == 'mlb_coll_ext') { - if ($delayProcessNotes > 0) { - $processLimitDate = $this->retrieveProcessLimitDate( - $resId, - $delayProcessNotes, - $calendarType - ); - } else { - $processLimitDate = $this->retrieveProcessLimitDate($resId); - } - //echo $processLimitDate; - } - - if (!$findProcessLimitDate && $processLimitDate <> '') { - array_push( - $data, - array( - 'column' => 'process_limit_date', - 'value' => $processLimitDate, - 'type' => 'date', - ) - ); - } + if (empty($aArgs['data'])) { + return ['errors' => 'data ' . _EMPTY]; + } - //var_dump($data); - for ($i = 0; $i < count($data); $i++) { - if (strtoupper($data[$i]['type']) == 'INTEGER' || strtoupper($data[$i]['type']) == 'FLOAT') { - if ($data[$i]['value'] == '') { - $data[$i]['value'] = '0'; - } - $data[$i]['value'] = str_replace(',', '.', $data[$i]['value']); - } - if (strtoupper($data[$i]['column']) == strtoupper('category_id')) { - $categoryId = $data[$i]['value']; - } - if (strtoupper($data[$i]['column']) == strtoupper('alt_identifier') && $data[$i]['value'] == "") { - require_once 'apps' . DIRECTORY_SEPARATOR . $_SESSION['config']['app_id'] - . DIRECTORY_SEPARATOR . 'class' . DIRECTORY_SEPARATOR . 'class_chrono.php'; - $chronoX = new chrono(); - for ($iColl=0; $iColl<=count($_SESSION['collections']); $iColl++) { - if ($_SESSION['collections'][$iColl]['extensions'][0] == $table) { - $resViewTable = $_SESSION['collections'][$iColl]['view']; - break; - } - } - $stmt = $db->query("SELECT destination, type_id FROM " . $resViewTable - . " WHERE res_id = ?", array($resId)); - $resView = $stmt->fetchObject(); - $myVars = array( - 'entity_id' => $resView->destination, - 'type_id' => $resView->type_id, - 'category_id' => $categoryId, - 'folder_id' => "", - ); - $myChrono = $chronoX->generate_chrono($categoryId, $myVars, 'false'); - $data[$i]['value'] = $myChrono; - } - if (strtoupper($data[$i]['column']) == strtoupper('exp_contact_id') && - $data[$i]['value'] <> "" && !is_numeric($data[$i]['value'])) { - $theString = str_replace(">", "", $data[$i]['value']); - $mail = explode("<", $theString); - $stmt = $db->query("SELECT contact_id FROM view_contacts WHERE email = ? " - . " and enabled = 'Y' order by creation_date asc", array($mail[count($mail) -1])); - $contact = $stmt->fetchObject(); - - if ($contact->contact_id <> "") { - $data[$i]['value'] = $contact->contact_id; - } else { - $data[$i]['value'] = 0; - } - } - if (strtoupper($data[$i]['column']) == strtoupper('address_id') && - $data[$i]['value'] <> "" && !is_numeric($data[$i]['value'])) { - $theString = str_replace(">", "", $data[$i]['value']); - $mail = explode("<", $theString); - $stmt = $db->query("SELECT ca_id FROM view_contacts WHERE email = ? " - . " and enabled = 'Y' order by creation_date asc", array($mail[count($mail) -1])); - $contact = $stmt->fetchObject(); - if ($contact->ca_id <> "") { - $data[$i]['value'] = $contact->ca_id; - } else { - $data[$i]['value'] = 0; - } - } - //COLUMN - $data[$i]['column'] = strtolower($data[$i]['column']); - $queryExtFields .= $data[$i]['column'] . ','; - //VALUE - if ($data[$i]['type'] == 'string' || $data[$i]['type'] == 'date') { - $queryExtValues .= "'" . $data[$i]['value'] . "',"; - } else { - $queryExtValues .= $data[$i]['value'] . ","; + if (empty($aArgs['table'])) { + return ['errors' => 'table ' . _EMPTY]; + } + + + $func = new functions(); + + $queryExtFields = '('; + $queryExtValues = '('; + $queryExtValuesFinal = '('; + $parameters = array(); + $db = new Database(); + $findProcessLimitDate = false; + $findProcessNotes = false; + $delayProcessNotes = 0; + + for ($i = 0; $i < count($data); $i++) { + if ($data[$i]['column'] == 'process_limit_date') { + $findProcessLimitDate = true; + } + if ($data[$i]['column'] == 'process_notes') { + $findProcessNotes = true; + $donnees = explode(',', $data[$i]['value']); + $delayProcessNotes = $donnees['0']; + $calendarType = $donnees['1']; + } + } + + if ($table == 'mlb_coll_ext') { + if ($delayProcessNotes > 0) { + $processLimitDate = $this->retrieveProcessLimitDate( + $resId, + $delayProcessNotes, + $calendarType + ); + } else { + $processLimitDate = $this->retrieveProcessLimitDate($resId); + } + } + + if (!$findProcessLimitDate && $processLimitDate <> '') { + array_push( + $data, + array( + 'column' => 'process_limit_date', + 'value' => $processLimitDate, + 'type' => 'date', + ) + ); + } + + for ($i = 0; $i < count($data); $i++) { + if (strtoupper($data[$i]['type']) == 'INTEGER' || + strtoupper($data[$i]['type']) == 'FLOAT') { + if ($data[$i]['value'] == '') { + $data[$i]['value'] = '0'; + } + $data[$i]['value'] = str_replace(',', '.', $data[$i]['value']); + } + if (strtoupper($data[$i]['column']) == strtoupper('category_id')) { + $categoryId = $data[$i]['value']; + } + if (strtoupper($data[$i]['column']) == strtoupper('alt_identifier') && + $data[$i]['value'] == "") { + require_once 'apps' . DIRECTORY_SEPARATOR . $_SESSION['config']['app_id'] + . DIRECTORY_SEPARATOR . 'class' . DIRECTORY_SEPARATOR . 'class_chrono.php'; + $chronoX = new chrono(); + for ($iColl=0; $iColl<=count($_SESSION['collections']); $iColl++) { + if ($_SESSION['collections'][$iColl]['extensions'][0] == $table) { + $resViewTable = $_SESSION['collections'][$iColl]['view']; + break; } - $parameters[] = $data[$i]['value']; - $queryExtValuesFinal .= "?,"; } - $queryExtFields = preg_replace('/,$/', ',res_id)', $queryExtFields); - $queryExtValues = preg_replace( - '/,$/', - ',' . $resId . ')', - $queryExtValues - ); - $queryExtValuesFinal = preg_replace( - '/,$/', - ',' . $resId . ')', - $queryExtValuesFinal + $stmt = $db->query("SELECT destination, type_id FROM " . $resViewTable + . " WHERE res_id = ?", array($resId)); + $resView = $stmt->fetchObject(); + $myVars = array( + 'entity_id' => $resView->destination, + 'type_id' => $resView->type_id, + 'category_id' => $categoryId, + 'folder_id' => "", ); - /*$queryExt = " insert into " . $table . " " . $queryExtFields - . ' values ' . $queryExtValues ;*/ - $queryExt = " insert into " . $table . " " . $queryExtFields - . ' values ' . $queryExtValuesFinal ; - //echo $queryExt;exit; - $returnCode = 0; - if ($db->query($queryExt, $parameters)) { - $returnResArray = array( - 'returnCode' => (int) 0, - 'resId' => $resId, - 'error' => '', - ); + $myChrono = $chronoX->generate_chrono($categoryId, $myVars, 'false'); + $data[$i]['value'] = $myChrono; + } + if (strtoupper($data[$i]['column']) == strtoupper('exp_contact_id') && + $data[$i]['value'] <> "" && !is_numeric($data[$i]['value'])) { + $theString = str_replace(">", "", $data[$i]['value']); + $mail = explode("<", $theString); + $stmt = $db->query("SELECT contact_id FROM view_contacts WHERE email = ? " + . " and enabled = 'Y' order by creation_date asc", array($mail[count($mail) -1])); + $contact = $stmt->fetchObject(); + + if ($contact->contact_id <> "") { + $data[$i]['value'] = $contact->contact_id; + } else { + $data[$i]['value'] = 0; + } + } + if (strtoupper($data[$i]['column']) == strtoupper('address_id') && + $data[$i]['value'] <> "" && !is_numeric($data[$i]['value'])) { + $theString = str_replace(">", "", $data[$i]['value']); + $mail = explode("<", $theString); + $stmt = $db->query("SELECT ca_id FROM view_contacts WHERE email = ? " + . " and enabled = 'Y' order by creation_date asc", array($mail[count($mail) -1])); + $contact = $stmt->fetchObject(); + if ($contact->ca_id <> "") { + $data[$i]['value'] = $contact->ca_id; } else { - $returnResArray = array( - 'returnCode' => (int) -2, - 'resId' => '', - 'error' => 'Pb with SQL insertion', - ); + $data[$i]['value'] = 0; } - return $returnResArray; + } + //COLUMN + $data[$i]['column'] = strtolower($data[$i]['column']); + $queryExtFields .= $data[$i]['column'] . ','; + //VALUE + if ($data[$i]['type'] == 'string' || $data[$i]['type'] == 'date') { + $queryExtValues .= "'" . $data[$i]['value'] . "',"; } else { - $returnResArray = array( - 'returnCode' => (int) -3, - 'resId' => '', - 'error' => 'resId is not set', - ); - return $returnResArray; + $queryExtValues .= $data[$i]['value'] . ","; } - } catch (Exception $e) { + $parameters[] = $data[$i]['value']; + $queryExtValuesFinal .= "?,"; + } + $queryExtFields = preg_replace('/,$/', ',res_id)', $queryExtFields); + $queryExtValues = preg_replace( + '/,$/', + ',' . $resId . ')', + $queryExtValues + ); + $queryExtValuesFinal = preg_replace( + '/,$/', + ',' . $resId . ')', + $queryExtValuesFinal + ); + + $queryExt = " insert into " . $table . " " . $queryExtFields + . ' values ' . $queryExtValuesFinal ; + + $returnCode = 0; + if ($db->query($queryExt, $parameters)) { $returnResArray = array( - 'returnCode' => (int) -1, + 'returnCode' => (int) 0, + 'resId' => $resId, + 'error' => '', + ); + } else { + $returnResArray = array( + 'returnCode' => (int) -2, 'resId' => '', - 'error' => 'unknown error' . $e->getMessage(), + 'error' => 'Pb with SQL insertion', ); - return $returnResArray; } + return $returnResArray; + + } + + /** + * Convert an object to an array + * @param $object object to convert + */ + private function object2array($object) + { + $return = null; + if (is_array($object)) { + foreach ($object as $key => $value) { + $return[$key] = $this->object2array($value); + } + } else { + if (is_object($object)) { + $var = get_object_vars($object); + if ($var) { + foreach ($var as $key => $value) { + $return[$key] = ($key && !$value) ? null : $this->object2array($value); + } + } else { + return $object; + } + } else { + return $object; + } + } + return $return; } } diff --git a/core/Test/DocserverControllerTest.php b/core/Test/DocserverControllerTest.php index 8fb412bd2d4d072d24fcb7997473e218afd7d4de..485654c400854c24dfcd0b105edc17a560b8498c 100644 --- a/core/Test/DocserverControllerTest.php +++ b/core/Test/DocserverControllerTest.php @@ -11,7 +11,7 @@ namespace MaarchTest; require_once __DIR__.'/define.php'; -class DocserverControllerTest extends PHPUnit_Framework_TestCase +class DocserverControllerTest extends \PHPUnit_Framework_TestCase { // public function testGetList() // { diff --git a/core/Test/DocserverToolsControllerTest.php b/core/Test/DocserverToolsControllerTest.php index 3a1a48fbaa82527540b8b5dac8811dec4d3d91a7..41bd681198d461ca79942eb5a26a8cc0e3d1e673 100644 --- a/core/Test/DocserverToolsControllerTest.php +++ b/core/Test/DocserverToolsControllerTest.php @@ -11,7 +11,7 @@ namespace MaarchTest; require_once __DIR__.'/define.php'; -class DocserverToolsControllerTest extends PHPUnit_Framework_TestCase +class DocserverToolsControllerTest extends \PHPUnit_Framework_TestCase { public function testSetRights() { diff --git a/core/Test/DocserverTypeControllerTest.php b/core/Test/DocserverTypeControllerTest.php index fc1e6cebcc8d0a76db931edf73ca031428e2265a..8a891ce8f2b9909ab7934d4ee0e0b7484510225f 100644 --- a/core/Test/DocserverTypeControllerTest.php +++ b/core/Test/DocserverTypeControllerTest.php @@ -11,7 +11,7 @@ namespace MaarchTest; require_once __DIR__.'/define.php'; -class DocserverTypeControllerTest extends PHPUnit_Framework_TestCase +class DocserverTypeControllerTest extends \PHPUnit_Framework_TestCase { public function testGetList() { diff --git a/core/Test/ResControllerTest.php b/core/Test/ResControllerTest.php index 9cc586e9e92d4b05af3a45e9a4de9ad774e38274..afccc1a219d31714ca80b9d46178191ece094568 100644 --- a/core/Test/ResControllerTest.php +++ b/core/Test/ResControllerTest.php @@ -11,7 +11,7 @@ namespace MaarchTest; require_once __DIR__.'/define.php'; -class ResControllerTest extends PHPUnit_Framework_TestCase +class ResControllerTest extends \PHPUnit_Framework_TestCase { public function testPrepareStorage() @@ -192,4 +192,89 @@ class ResControllerTest extends PHPUnit_Framework_TestCase $this->assertGreaterThanOrEqual(0, $response); } + + public function testCreate() + { + $action = new \Core\Controllers\ResController(); + + $environment = \Slim\Http\Environment::mock( + [ + 'REQUEST_METHOD' => 'POST', + ] + ); + + $path = $_SESSION['config']['tmppath'] . '/test/'; + + if (!is_dir($path)) { + mkdir($path); + } + + $fileSource = 'test_source.txt'; + + $fp = fopen($path . $fileSource, 'a'); + fwrite($fp, 'a unit test'); + fclose($fp); + + $fileContent = file_get_contents($path . $fileSource, FILE_BINARY); + $encodedFile = base64_encode($fileContent); + //echo $encodedFile . PHP_EOL;exit; + + $data = []; + + array_push( + $data, + array( + 'column' => 'subject', + 'value' => 'UNIT TEST from slim', + 'type' => 'string', + ) + ); + + array_push( + $data, + array( + 'column' => 'type_id', + 'value' => 110, + 'type' => 'integer', + ) + ); + + array_push( + $data, + array( + 'column' => 'custom_t1', + 'value' => 'TEST', + 'type' => 'string', + ) + ); + + array_push( + $data, + array( + 'column' => 'custom_t10', + 'value' => 'lgi@maarch.org', + 'type' => 'string', + ) + ); + //print_r(json_encode($data)); + //sample in json : [{"column":"subject","value":"UNIT T + //EST from slim","type":"string"},{"column":"type_id","value":110,"type":"integer"}, + //{"column":"custom_t1","value":"TES + //T","type":"string"},{"column":"custom_t10","value":"lgi@maarch.org","type":"string"}] + + $aArgs = [ + 'encodedFile' => $encodedFile, + 'data' => $data, + 'collId' => 'letterbox_coll', + 'table' => 'res_letterbox', + 'fileFormat' => 'txt', + 'status' => 'new', + ]; + + $request = \Slim\Http\Request::createFromEnvironment($environment); + $response = new \Slim\Http\Response(); + $response = $action->create($request, $response, $aArgs); + //print_r($response);exit; + $this->assertGreaterThan(1, json_decode($response->getBody())[0]); + } } diff --git a/core/Test/StatusControllerTest.php b/core/Test/StatusControllerTest.php index 1d28fd04d9c77df5c009c800820687d023805cf8..63c743ef9858bc059414184eb2a6e3fc3fb5aac8 100644 --- a/core/Test/StatusControllerTest.php +++ b/core/Test/StatusControllerTest.php @@ -11,7 +11,7 @@ namespace MaarchTest; require_once __DIR__.'/define.php'; -class StatusControllerTest extends PHPUnit_Framework_TestCase +class StatusControllerTest extends \PHPUnit_Framework_TestCase { public function testGetList() { diff --git a/php_errors.log b/php_errors.log new file mode 100644 index 0000000000000000000000000000000000000000..fa45543fdac58eca19eefeb5001195d447ed3dfc --- /dev/null +++ b/php_errors.log @@ -0,0 +1,103 @@ +[09-Mar-2017 16:31:07 Europe/Paris] PHP Fatal error: Class 'MaarchTest\PHPUnit_Framework_TestCase' not found in /var/www/html/MaarchCourrier/core/Test/ResControllerTest.php on line 14 +[09-Mar-2017 16:31:07 Europe/Paris] PHP Stack trace: +[09-Mar-2017 16:31:07 Europe/Paris] PHP 1. {main}() /usr/bin/phpunit:0 +[09-Mar-2017 16:31:07 Europe/Paris] PHP 2. PHPUnit_TextUI_Command::main() /usr/bin/phpunit:29 +[09-Mar-2017 16:31:07 Europe/Paris] PHP 3. PHPUnit_TextUI_Command->run() /usr/share/php/PHPUnit/TextUI/Command.php:106 +[09-Mar-2017 16:31:07 Europe/Paris] PHP 4. PHPUnit_Runner_BaseTestRunner->getTest() /usr/share/php/PHPUnit/TextUI/Command.php:128 +[09-Mar-2017 16:31:07 Europe/Paris] PHP 5. PHPUnit_Runner_BaseTestRunner->loadSuiteClass() /usr/share/php/PHPUnit/Runner/BaseTestRunner.php:65 +[09-Mar-2017 16:31:07 Europe/Paris] PHP 6. PHPUnit_Runner_StandardTestSuiteLoader->load() /usr/share/php/PHPUnit/Runner/BaseTestRunner.php:124 +[09-Mar-2017 16:31:07 Europe/Paris] PHP 7. PHPUnit_Util_Fileloader::checkAndLoad() /usr/share/php/PHPUnit/Runner/StandardTestSuiteLoader.php:39 +[09-Mar-2017 16:31:07 Europe/Paris] PHP 8. PHPUnit_Util_Fileloader::load() /usr/share/php/PHPUnit/Util/Fileloader.php:38 +[09-Mar-2017 16:31:07 Europe/Paris] PHP 9. include_once() /usr/share/php/PHPUnit/Util/Fileloader.php:56 +[09-Mar-2017 16:32:36 Europe/Paris] PHP Fatal error: Class 'MaarchTest\PHPUnit_Framework_TestCase' not found in /var/www/html/MaarchCourrier/core/Test/StatusControllerTest.php on line 14 +[09-Mar-2017 16:32:36 Europe/Paris] PHP Stack trace: +[09-Mar-2017 16:32:36 Europe/Paris] PHP 1. {main}() /usr/bin/phpunit:0 +[09-Mar-2017 16:32:36 Europe/Paris] PHP 2. PHPUnit_TextUI_Command::main() /usr/bin/phpunit:29 +[09-Mar-2017 16:32:36 Europe/Paris] PHP 3. PHPUnit_TextUI_Command->run() /usr/share/php/PHPUnit/TextUI/Command.php:106 +[09-Mar-2017 16:32:36 Europe/Paris] PHP 4. PHPUnit_Runner_BaseTestRunner->getTest() /usr/share/php/PHPUnit/TextUI/Command.php:128 +[09-Mar-2017 16:32:36 Europe/Paris] PHP 5. PHPUnit_Runner_BaseTestRunner->loadSuiteClass() /usr/share/php/PHPUnit/Runner/BaseTestRunner.php:65 +[09-Mar-2017 16:32:36 Europe/Paris] PHP 6. PHPUnit_Runner_StandardTestSuiteLoader->load() /usr/share/php/PHPUnit/Runner/BaseTestRunner.php:124 +[09-Mar-2017 16:32:36 Europe/Paris] PHP 7. PHPUnit_Util_Fileloader::checkAndLoad() /usr/share/php/PHPUnit/Runner/StandardTestSuiteLoader.php:39 +[09-Mar-2017 16:32:36 Europe/Paris] PHP 8. PHPUnit_Util_Fileloader::load() /usr/share/php/PHPUnit/Util/Fileloader.php:38 +[09-Mar-2017 16:32:36 Europe/Paris] PHP 9. include_once() /usr/share/php/PHPUnit/Util/Fileloader.php:56 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Warning: include(apps//css/styles.css): failed to open stream: No such file or directory in /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php on line 109 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Stack trace: +[09-Mar-2017 16:54:48 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php:0 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Warning: include(): Failed opening 'apps//css/styles.css' for inclusion (include_path='/var/www/html/MaarchCourrier/:.:/usr/share/php') in /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php on line 109 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Stack trace: +[09-Mar-2017 16:54:48 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php:0 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Warning: array_keys() expects parameter 1 to be array, null given in /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php on line 110 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Stack trace: +[09-Mar-2017 16:54:48 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php:0 +[09-Mar-2017 16:54:48 Europe/Paris] PHP 2. array_keys() /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php:110 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Warning: Invalid argument supplied for foreach() in /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php on line 110 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Stack trace: +[09-Mar-2017 16:54:48 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php:0 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Warning: include_once(apps//css/doctype_levels.css): failed to open stream: No such file or directory in /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php on line 127 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Stack trace: +[09-Mar-2017 16:54:48 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php:0 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Warning: include_once(): Failed opening 'apps//css/doctype_levels.css' for inclusion (include_path='/var/www/html/MaarchCourrier/:.:/usr/share/php') in /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php on line 127 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Stack trace: +[09-Mar-2017 16:54:48 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php:0 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Warning: include_once(apps//css/chosen.min.css): failed to open stream: No such file or directory in /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php on line 128 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Stack trace: +[09-Mar-2017 16:54:48 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php:0 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Warning: include_once(): Failed opening 'apps//css/chosen.min.css' for inclusion (include_path='/var/www/html/MaarchCourrier/:.:/usr/share/php') in /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php on line 128 +[09-Mar-2017 16:54:48 Europe/Paris] PHP Stack trace: +[09-Mar-2017 16:54:48 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/apps/maarch_entreprise/merged_css.php:0 +[09-Mar-2017 17:05:07 Europe/Paris] PHP Warning: Illegal string offset 'column' in /var/www/html/MaarchCourrier/core/Controllers/ResController.php on line 93 +[09-Mar-2017 17:05:07 Europe/Paris] PHP Stack trace: +[09-Mar-2017 17:05:07 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/rest/index.php:0 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 2. Slim\App->run() /var/www/html/MaarchCourrier/rest/index.php:128 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 3. Slim\App->process() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:293 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 4. Slim\App->callMiddlewareStack() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:332 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 5. Slim\App->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/MiddlewareAwareTrait.php:116 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 6. Slim\Route->run() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:438 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 7. Slim\Route->callMiddlewareStack() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Route.php:316 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 8. Slim\Route->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/MiddlewareAwareTrait.php:116 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 9. Slim\Handlers\Strategies\RequestResponse->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Route.php:344 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 10. call_user_func:{/var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41}() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 11. Core\Controllers\ResController->create() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 12. Core\Controllers\ResController->storeResource() /var/www/html/MaarchCourrier/core/Controllers/ResController.php:35 +[09-Mar-2017 17:05:07 Europe/Paris] PHP Fatal error: Cannot use string offset as an array in /var/www/html/MaarchCourrier/core/Controllers/ResController.php on line 93 +[09-Mar-2017 17:05:07 Europe/Paris] PHP Stack trace: +[09-Mar-2017 17:05:07 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/rest/index.php:0 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 2. Slim\App->run() /var/www/html/MaarchCourrier/rest/index.php:128 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 3. Slim\App->process() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:293 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 4. Slim\App->callMiddlewareStack() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:332 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 5. Slim\App->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/MiddlewareAwareTrait.php:116 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 6. Slim\Route->run() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:438 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 7. Slim\Route->callMiddlewareStack() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Route.php:316 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 8. Slim\Route->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/MiddlewareAwareTrait.php:116 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 9. Slim\Handlers\Strategies\RequestResponse->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Route.php:344 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 10. call_user_func:{/var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41}() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 11. Core\Controllers\ResController->create() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41 +[09-Mar-2017 17:05:07 Europe/Paris] PHP 12. Core\Controllers\ResController->storeResource() /var/www/html/MaarchCourrier/core/Controllers/ResController.php:35 +[09-Mar-2017 17:06:16 Europe/Paris] PHP Fatal error: Cannot use object of type stdClass as array in /var/www/html/MaarchCourrier/core/Controllers/ResController.php on line 94 +[09-Mar-2017 17:06:16 Europe/Paris] PHP Stack trace: +[09-Mar-2017 17:06:16 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/rest/index.php:0 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 2. Slim\App->run() /var/www/html/MaarchCourrier/rest/index.php:128 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 3. Slim\App->process() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:293 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 4. Slim\App->callMiddlewareStack() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:332 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 5. Slim\App->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/MiddlewareAwareTrait.php:116 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 6. Slim\Route->run() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:438 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 7. Slim\Route->callMiddlewareStack() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Route.php:316 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 8. Slim\Route->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/MiddlewareAwareTrait.php:116 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 9. Slim\Handlers\Strategies\RequestResponse->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Route.php:344 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 10. call_user_func:{/var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41}() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 11. Core\Controllers\ResController->create() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41 +[09-Mar-2017 17:06:16 Europe/Paris] PHP 12. Core\Controllers\ResController->storeResource() /var/www/html/MaarchCourrier/core/Controllers/ResController.php:36 +[09-Mar-2017 17:13:15 Europe/Paris] PHP Fatal error: Cannot use object of type stdClass as array in /var/www/html/MaarchCourrier/core/Controllers/ResController.php on line 96 +[09-Mar-2017 17:13:15 Europe/Paris] PHP Stack trace: +[09-Mar-2017 17:13:15 Europe/Paris] PHP 1. {main}() /var/www/html/MaarchCourrier/rest/index.php:0 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 2. Slim\App->run() /var/www/html/MaarchCourrier/rest/index.php:128 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 3. Slim\App->process() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:293 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 4. Slim\App->callMiddlewareStack() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:332 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 5. Slim\App->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/MiddlewareAwareTrait.php:116 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 6. Slim\Route->run() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/App.php:438 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 7. Slim\Route->callMiddlewareStack() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Route.php:316 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 8. Slim\Route->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/MiddlewareAwareTrait.php:116 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 9. Slim\Handlers\Strategies\RequestResponse->__invoke() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Route.php:344 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 10. call_user_func:{/var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41}() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 11. Core\Controllers\ResController->create() /var/www/html/MaarchCourrier/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php:41 +[09-Mar-2017 17:13:15 Europe/Paris] PHP 12. Core\Controllers\ResController->storeResource() /var/www/html/MaarchCourrier/core/Controllers/ResController.php:38 diff --git a/rest/index.php b/rest/index.php index c0dcc05af398a7e940863787352e1598fc87ab70..10acbdaa0127aa17c56c5c425e705fe0d98b6d0c 100644 --- a/rest/index.php +++ b/rest/index.php @@ -120,6 +120,9 @@ $app->post('/attachments', \Attachments\Controllers\AttachmentsController::class $app->get('/{basketId}/signatureBook/{resId}', \Visa\Controllers\VisaController::class . ':getSignatureBook'); $app->put('/{collId}/{resId}/unsign', \Visa\Controllers\VisaController::class . ':unsignFile'); +//resource +$app->post('/res', \Core\Controllers\ResController::class . ':create'); + $app->run();