|
|
@@ -3632,37 +3632,23 @@ jQuery(document).ready(function(){
|
|
|
if($DBG){echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;text-align:left;">TODO: save ID(' . $id . ') (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($args);echo'</pre>';}
|
|
|
if($DBG){echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;text-align:left;">acl (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($this->_acl);echo'</pre>';}
|
|
|
|
|
|
- $sqlObj = new stdClass();
|
|
|
- $fields = $this->_acl->getFields();
|
|
|
- if($DBG){echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;text-align:left;">fields (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($fields);echo'</pre>';}
|
|
|
- foreach ($fields as $kID => $vField) {
|
|
|
- if (!$this->_acl->isAllowed($kID, 'C')) {
|
|
|
- continue;
|
|
|
- }
|
|
|
- if (array_key_exists("f{$kID}", $args)) {
|
|
|
- $sqlObj->{$vField['name']} = $args["f{$kID}"];
|
|
|
+ try {
|
|
|
+ $item = $this->_acl->convertObjectFromUserInput($args, $type = 'array_by_id', $prefix = 'f');
|
|
|
|
|
|
- if (empty($args["f{$kID}"]) && strlen($args["f{$kID}"]) == 0) {// fix bug in input type date and value="0000-00-00"
|
|
|
- $sqlObj->{$vField['name']} = $this->_acl->fixEmptyValueFromUser($kID);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- if($DBG){echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;text-align:left;"> (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($sqlObj);echo'</pre>';}
|
|
|
+ // TODO: if empty $obj - return error - no data sent from user
|
|
|
+ $createdId = $this->_acl->addItem($item);
|
|
|
|
|
|
- {// add DefaultAclGroup if no create perms ('C')
|
|
|
- $defaultAclGroup = User::getDefaultAclGroup();
|
|
|
- if ($defaultAclGroup) {
|
|
|
- foreach ($fields as $kID => $vField) {
|
|
|
- if (!$this->_acl->isAllowed($kID, 'C')) {
|
|
|
- if ($vField['name'] == 'A_ADM_COMPANY') {
|
|
|
- $sqlObj->{$vField['name']} = $defaultAclGroup;
|
|
|
- }
|
|
|
- else if ($vField['name'] == 'A_CLASSIFIED') {
|
|
|
- $sqlObj->{$vField['name']} = $defaultAclGroup;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ $response->type = 'success';
|
|
|
+ $response->msg = "Utworzono pomyślnie rekord nr {$retID}";
|
|
|
+ $response->id = $createdId;
|
|
|
+ $response->record = $this->_acl->getItem($createdId);
|
|
|
+ return $response;
|
|
|
+
|
|
|
+ } catch (Exception $e) {
|
|
|
+ $response = new stdClass();
|
|
|
+ $response->type = 'error';
|
|
|
+ $response->msg = $e->getMessage();
|
|
|
+ return $response;
|
|
|
}
|
|
|
|
|
|
$retID = $this->_dataSource->addItem($sqlObj);
|