Ejemplo n.º 1
0
 public function send()
 {
     $this->sendHeaders();
     $buffer = $this->buffer;
     if ($this->sendEventEnable) {
         $eventPoint = new umiEventPoint('systemBufferSend');
         $eventPoint->setMode('before');
         $eventPoint->addRef('buffer', $buffer);
         $eventPoint->call();
     }
     echo $buffer;
     $this->clear();
 }
 public function __wakeup()
 {
     if ($this->dbValue) {
         $v78a5eb43deef9a7b5b9ce157b9d52ac4 = $this->dbValue;
         if ($v3766293ae0857925595a6f0bf40531a8 = cmsController::getInstance()->getModule("eshop")) {
             $v78a5eb43deef9a7b5b9ce157b9d52ac4 = $v3766293ae0857925595a6f0bf40531a8->calculateDiscount($this->object_id, $v78a5eb43deef9a7b5b9ce157b9d52ac4);
         }
         $v161c9aaa4fe035e7b2f465bc59f3ab45 = new umiEventPoint("umiObjectProperty_loadPriceValue");
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("object_id", $this->object_id);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->addRef("price", $v78a5eb43deef9a7b5b9ce157b9d52ac4);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->call();
         $v2063c1608d6e0baf80249c42e2be5804 = array($v78a5eb43deef9a7b5b9ce157b9d52ac4);
         $this->value = $v2063c1608d6e0baf80249c42e2be5804;
     }
 }
Ejemplo n.º 3
0
 public function edit()
 {
     // Указываем, что в первом параметре мы ожидаем id страницы
     // Если все хорошо, то нам вернется umiHierarchyElement, если нет,
     // то будет выброшен соответствующий exception
     $element = $this->expectElement("param0");
     $mode = (string) getRequest('param1');
     $this->setHeaderLabel("header-forum-edit-" . $this->getObjectTypeMethod($element->getObject()));
     $inputData = array("element" => $element, "allowed-element-types" => array('conf', 'topic', 'message'));
     if ($mode == "do") {
         $this->saveEditedElementData($inputData);
         $event = new umiEventPoint("systemSwitchElementActivity");
         $event->addRef("element", $element);
         $event->setMode("after");
         $event->call();
         $this->chooseRedirect();
     }
     // Вывод данных
     return $this->makeAdminOutputForm("modify", "page", $inputData);
 }
Ejemplo n.º 4
0
 public function tree_copy_element()
 {
     $element = $this->expectElement('element');
     $cloneMode = (bool) getRequest('clone_mode');
     $copyAll = (bool) getRequest('copy_all');
     $parentId = (int) getRequest('rel');
     $new_element_id = false;
     if ($element instanceof umiHierarchyElement) {
         $element_id = $element->getId();
         if (!($parentId && umiHierarchy::getInstance()->isExists($parentId))) {
             $parentId = umiHierarchy::getInstance()->getParent($element_id);
         }
         if (defined("DB_DRIVER") && DB_DRIVER != "xml" || !defined("DB_DRIVER")) {
             l_mysql_query("START TRANSACTION");
         }
         if ($cloneMode) {
             // create real copy
             $clone_allowed = true;
             if ($clone_allowed) {
                 $event = new umiEventPoint("systemCloneElement");
                 $event->addRef("element", $element);
                 $event->setParam("elementId", $element_id);
                 $event->setParam("parentId", $parentId);
                 $event->setMode("before");
                 $event->call();
                 $new_element_id = umiHierarchy::getInstance()->cloneElement($element_id, $parentId, $copyAll);
                 $event->setParam("newElementId", $new_element_id);
                 $event->setMode("after");
                 $event->call();
                 $new_element = umiHierarchy::getInstance()->getElement((int) $new_element_id, false, false);
                 $event = new umiEventPoint("systemCreateElementAfter");
                 $event->addRef("element", $new_element);
                 $event->setParam("elementId", $new_element_id);
                 $event->setParam("parentId", $parentId);
                 $event->setMode("after");
                 $event->call();
             }
         } else {
             // create virtual copy
             $event = new umiEventPoint("systemVirtualCopyElement");
             $event->setParam("elementId", $element_id);
             $event->setParam("parentId", $parentId);
             $event->addRef("element", $element);
             $event->setMode("before");
             $event->call();
             $new_element_id = umiHierarchy::getInstance()->copyElement($element_id, $parentId, $copyAll);
             $event->setParam("newElementId", $element_id);
             $event->setMode("after");
             $event->call();
             $new_element = umiHierarchy::getInstance()->getElement((int) $new_element_id, false, false);
             $event = new umiEventPoint("systemCreateElementAfter");
             $event->addRef("element", $new_element);
             $event->setParam("elementId", $new_element_id);
             $event->setParam("parentId", $parentId);
             $event->setMode("after");
             $event->call();
         }
         if ($new_element_id) {
             if ((bool) getRequest('return_copies')) {
                 $this->setDataType("form");
                 $this->setActionType("modify");
                 $data = $this->prepareData(array('element' => $new_element), "page");
                 $this->setData($data);
             } else {
                 $this->setDataType("list");
                 $this->setActionType("view");
                 $data = $this->prepareData(array($new_element_id), "pages");
                 $this->setData($data);
             }
             if (defined("DB_DRIVER") && DB_DRIVER != "xml" || !defined("DB_DRIVER")) {
                 l_mysql_query("COMMIT");
             }
             return $this->doData();
         } else {
             throw new publicAdminException(getLabel('error-copy-element'));
         }
     } else {
         throw new publicAdminException(getLabel('error-expect-element'));
     }
 }
Ejemplo n.º 5
0
 public function message()
 {
     $iObjectId = (int) getRequest('param0');
     $oCollection = umiObjectsCollection::getInstance();
     if (!$oCollection->isExists($iObjectId)) {
         throw new publicAdminException('The object does not exist');
     }
     $oMessage = umiObjectsCollection::getInstance()->getObject($iObjectId);
     $this->validateEntityByTypes($oMessage, array('module' => 'webforms'), true);
     $eventPoint = new umiEventPoint("sysytemBeginObjectEdit");
     $eventPoint->setMode("before");
     $eventPoint->addRef("object", $oCollection->getObject($iObjectId));
     $eventPoint->call();
     $sMessage = $this->formatMessage($iObjectId);
     $sAddress = $oMessage->getName();
     $sForm = umiObjectTypesCollection::getInstance()->getType($oMessage->getTypeId())->getName();
     $sIP = $oMessage->getValue('sender_ip');
     /**
      * @var umiDate
      */
     $oDate = $oMessage->getValue('sending_time');
     $this->setDataType("settings");
     $this->setActionType("view");
     $data = $this->prepareData(array('Message' => array('string:message' => $sMessage, 'string:address' => $sAddress, 'string:form' => $sForm, 'string:date' => $oDate instanceof umiDate ? $oDate->getFormattedDate() : "", 'string:ip' => $sIP, 'int:id' => $iObjectId)), "settings");
     $this->setData($data);
     return $this->doData();
 }
Ejemplo n.º 6
0
 protected function callEvent($vb6b9464f2f59896b4297666183eee817, $v8f41181a2712293624ac98172267c6d8)
 {
     static $v886bb73b3156b0aa24aac99d2de0b238 = 0;
     $v4119639092e62c55ea8be348e4d9260d = new umiEventPoint("cron");
     $v4119639092e62c55ea8be348e4d9260d->setMode("process");
     $v4119639092e62c55ea8be348e4d9260d->setModules($this->modules);
     $v4119639092e62c55ea8be348e4d9260d->setParam("lastCallTime", $vb6b9464f2f59896b4297666183eee817);
     $v4119639092e62c55ea8be348e4d9260d->setParam("currCallTime", $v8f41181a2712293624ac98172267c6d8);
     $v4119639092e62c55ea8be348e4d9260d->addRef("buffer", $this->buffer);
     $v4119639092e62c55ea8be348e4d9260d->addRef("counter", $v886bb73b3156b0aa24aac99d2de0b238);
     $this->logs = $v4119639092e62c55ea8be348e4d9260d->call();
     return $v886bb73b3156b0aa24aac99d2de0b238;
 }
 protected function importObjects(umiObjectType $v726e8e4809d4c1b28a6549d86436a124)
 {
     $v4340fd73e75df7a9d9e45902a59ba3a4 = $this->readNextRow();
     $this->fields = count($v4340fd73e75df7a9d9e45902a59ba3a4);
     $v5891da2d64975cae48d175d1e001f5da = umiObjectsCollection::getInstance();
     $vd14a8022b085f9ef19d479cbdd581127 = umiObjectTypesCollection::getInstance();
     $v9367a975f19a06750b67f719f4f08ceb = false;
     if ($v726e8e4809d4c1b28a6549d86436a124->getId() == $vd14a8022b085f9ef19d479cbdd581127->getTypeIdByGUID('dispatches-subscriber')) {
         $v9367a975f19a06750b67f719f4f08ceb = true;
     }
     $v7f2db423a49b305459147332fb01cf87 = outputBuffer::current();
     def_module::$noRedirectOnPanic = true;
     $v4340fd73e75df7a9d9e45902a59ba3a4 = $this->analyzeHeaders($v726e8e4809d4c1b28a6549d86436a124, $v4340fd73e75df7a9d9e45902a59ba3a4);
     $v76cf1d4ff412fd3cb644aa58a53c78dc = array();
     while ($v07d43db2a74336dcfbdaeeeffe6f7a19 = $this->readNextRow()) {
         echo str_repeat(' ', 1024);
         flush();
         $v07d43db2a74336dcfbdaeeeffe6f7a19 = $this->analyzeColumns($v4340fd73e75df7a9d9e45902a59ba3a4, $v07d43db2a74336dcfbdaeeeffe6f7a19);
         if (!isset($v07d43db2a74336dcfbdaeeeffe6f7a19['id'])) {
             continue;
         }
         $v16b2b26000987faccb260b9d39df1269 = $v07d43db2a74336dcfbdaeeeffe6f7a19['id'];
         if ($v9367a975f19a06750b67f719f4f08ceb && !$v16b2b26000987faccb260b9d39df1269) {
             $v8be74552df93e31bbdd6b36ed74bdb6a = new selector('objects');
             $v8be74552df93e31bbdd6b36ed74bdb6a->types('object-type')->name('dispatches', 'subscriber');
             $v8be74552df93e31bbdd6b36ed74bdb6a->where('name')->equals($v07d43db2a74336dcfbdaeeeffe6f7a19['name']);
             $v8be74552df93e31bbdd6b36ed74bdb6a->option('return')->value('id');
             $result = $v8be74552df93e31bbdd6b36ed74bdb6a->first;
             if (is_array($result) && count($result)) {
                 $v16b2b26000987faccb260b9d39df1269 = $result['id'];
             }
         }
         if ($v16b2b26000987faccb260b9d39df1269) {
             $vccae550f37edb4e56f3bf01df9953a6f = $v16b2b26000987faccb260b9d39df1269;
             $v53cc4db543d7a569e51c1d76ac6f278e = 'systemModifyObject';
         } else {
             $v53cc4db543d7a569e51c1d76ac6f278e = 'systemCreateObject';
             $v16b2b26000987faccb260b9d39df1269 = $v5891da2d64975cae48d175d1e001f5da->addObject('Temporary object name', $v726e8e4809d4c1b28a6549d86436a124->getId());
             $v7f2db423a49b305459147332fb01cf87->push('//Create new object "' . $v07d43db2a74336dcfbdaeeeffe6f7a19['name'] . '" of type ' . $v726e8e4809d4c1b28a6549d86436a124->getId() . ', id #' . $v16b2b26000987faccb260b9d39df1269 . "\n");
             $vccae550f37edb4e56f3bf01df9953a6f = 'new';
         }
         $va8cfde6331bd59eb2ac96f8911c4b666 = $v5891da2d64975cae48d175d1e001f5da->getObject($v16b2b26000987faccb260b9d39df1269);
         if ($va8cfde6331bd59eb2ac96f8911c4b666 instanceof umiObject == false) {
             $v76cf1d4ff412fd3cb644aa58a53c78dc[] = array('id' => $v16b2b26000987faccb260b9d39df1269, 'error' => getLabel('csv-error-not-found'), 'name' => $v07d43db2a74336dcfbdaeeeffe6f7a19['name']);
             continue;
         }
         if ($va8cfde6331bd59eb2ac96f8911c4b666->getTypeId() != $v726e8e4809d4c1b28a6549d86436a124->getId()) {
             $v76cf1d4ff412fd3cb644aa58a53c78dc[] = array('id' => $v16b2b26000987faccb260b9d39df1269, 'error' => getLabel('csv-error-wrong-type'), 'name' => $v07d43db2a74336dcfbdaeeeffe6f7a19['name']);
             continue;
         }
         $vd05b6ed7d2345020440df396d6da7f73 = umiFieldsCollection::getInstance();
         $_REQUEST['data'][$vccae550f37edb4e56f3bf01df9953a6f] = array();
         foreach ($v4340fd73e75df7a9d9e45902a59ba3a4 as $v865c0c0b4ab0e063e5caa3387c1a8741 => $v46b9e6004c49d9cc040029c197cab278) {
             if ($v865c0c0b4ab0e063e5caa3387c1a8741 == 'id') {
                 continue;
             }
             if ($v865c0c0b4ab0e063e5caa3387c1a8741 == 'name' && isset($v07d43db2a74336dcfbdaeeeffe6f7a19[$v865c0c0b4ab0e063e5caa3387c1a8741])) {
                 $_REQUEST['name'] = $v07d43db2a74336dcfbdaeeeffe6f7a19[$v865c0c0b4ab0e063e5caa3387c1a8741];
             }
             if (isset($v07d43db2a74336dcfbdaeeeffe6f7a19[$v865c0c0b4ab0e063e5caa3387c1a8741])) {
                 $_REQUEST['data'][$vccae550f37edb4e56f3bf01df9953a6f][$v865c0c0b4ab0e063e5caa3387c1a8741] = $v07d43db2a74336dcfbdaeeeffe6f7a19[$v865c0c0b4ab0e063e5caa3387c1a8741];
             }
         }
         if ($v726e8e4809d4c1b28a6549d86436a124->getMethod() == 'user') {
             $_REQUEST['data'][$vccae550f37edb4e56f3bf01df9953a6f]['password'][0] = 'dummyPassword';
         }
         try {
             $v4119639092e62c55ea8be348e4d9260d = new umiEventPoint($v53cc4db543d7a569e51c1d76ac6f278e);
             $v4119639092e62c55ea8be348e4d9260d->addRef("object", $va8cfde6331bd59eb2ac96f8911c4b666);
             $v4119639092e62c55ea8be348e4d9260d->setMode("before");
             $v4119639092e62c55ea8be348e4d9260d->call();
         } catch (errorPanicException $ve1671797c52e15f763380b45e841ec32) {
             $v76cf1d4ff412fd3cb644aa58a53c78dc[] = array('id' => $vccae550f37edb4e56f3bf01df9953a6f, 'error' => $ve1671797c52e15f763380b45e841ec32->getMessage(), 'name' => $v07d43db2a74336dcfbdaeeeffe6f7a19['name']);
             if ($vccae550f37edb4e56f3bf01df9953a6f == 'new') {
                 $v5891da2d64975cae48d175d1e001f5da->delObject($v16b2b26000987faccb260b9d39df1269);
             }
             continue 1;
         }
         foreach ($v07d43db2a74336dcfbdaeeeffe6f7a19 as $v972bf3f05d14ffbdb817bef60638ff00 => $v2063c1608d6e0baf80249c42e2be5804) {
             switch ($v972bf3f05d14ffbdb817bef60638ff00) {
                 case 'id':
                     continue;
                 case 'name':
                     $va8cfde6331bd59eb2ac96f8911c4b666->setName($v2063c1608d6e0baf80249c42e2be5804);
                     break;
                 default:
                     try {
                         $this->modifyProperty($va8cfde6331bd59eb2ac96f8911c4b666, $v972bf3f05d14ffbdb817bef60638ff00, $v2063c1608d6e0baf80249c42e2be5804);
                     } catch (fieldRestrictionException $ve1671797c52e15f763380b45e841ec32) {
                         $v76cf1d4ff412fd3cb644aa58a53c78dc[] = array('id' => $vccae550f37edb4e56f3bf01df9953a6f, 'error' => $ve1671797c52e15f763380b45e841ec32->getMessage(), 'name' => $v07d43db2a74336dcfbdaeeeffe6f7a19[$v972bf3f05d14ffbdb817bef60638ff00]);
                     }
                     break;
             }
         }
         $va8cfde6331bd59eb2ac96f8911c4b666->commit();
         try {
             $v4119639092e62c55ea8be348e4d9260d->setMode('after');
             $v4119639092e62c55ea8be348e4d9260d->call();
         } catch (errorPanicException $ve1671797c52e15f763380b45e841ec32) {
             $v76cf1d4ff412fd3cb644aa58a53c78dc[] = array('id' => $vccae550f37edb4e56f3bf01df9953a6f, 'error' => $ve1671797c52e15f763380b45e841ec32->getMessage(), 'name' => $v07d43db2a74336dcfbdaeeeffe6f7a19['name']);
             if ($vccae550f37edb4e56f3bf01df9953a6f == 'new') {
                 $v5891da2d64975cae48d175d1e001f5da->delObject($v16b2b26000987faccb260b9d39df1269);
             }
             continue 1;
         }
         unset($_REQUEST['data'][$vccae550f37edb4e56f3bf01df9953a6f]);
         unset($va8cfde6331bd59eb2ac96f8911c4b666);
     }
     def_module::$noRedirectOnPanic = false;
     if (sizeof($v76cf1d4ff412fd3cb644aa58a53c78dc)) {
         $v7f2db423a49b305459147332fb01cf87->push('var err = \'' . addslashes(getLabel('csv-error-import-list')) . "\\n';\n");
         foreach ($v76cf1d4ff412fd3cb644aa58a53c78dc as $v6b3e9cdfd9fd6b6f313d7dd4526c9ceb) {
             if ($v6b3e9cdfd9fd6b6f313d7dd4526c9ceb['id'] == 'new') {
                 $v7f2db423a49b305459147332fb01cf87->push('err += \'' . addslashes($v6b3e9cdfd9fd6b6f313d7dd4526c9ceb['name'] . ' (' . getLabel('csv-new-item') . ') - ' . $v6b3e9cdfd9fd6b6f313d7dd4526c9ceb['error']) . "\\n';\n");
             } else {
                 $v7f2db423a49b305459147332fb01cf87->push('err += \'' . addslashes($v6b3e9cdfd9fd6b6f313d7dd4526c9ceb['name'] . ' (#' . $v6b3e9cdfd9fd6b6f313d7dd4526c9ceb['id'] . ') - ' . $v6b3e9cdfd9fd6b6f313d7dd4526c9ceb['error']) . "\\n';\n");
             }
         }
         $v7f2db423a49b305459147332fb01cf87->push("alert(err);\n\n");
     }
 }
Ejemplo n.º 8
0
 protected function importObject(DOMElement $vcaf9b6b99962bf5c2264824231d7a40c)
 {
     $v61ce6a78cb3c8547fed20990c92edfe3 = $vcaf9b6b99962bf5c2264824231d7a40c->getAttribute('id');
     if (!strlen($v61ce6a78cb3c8547fed20990c92edfe3)) {
         $this->reportError("Can't create object {$vb068931cc450442b63f5b3d276ea4297} with empty id");
         return false;
     }
     $v1e0ca5b1252f1f6b1e0ac91be7e7219e = $vcaf9b6b99962bf5c2264824231d7a40c->hasAttribute('guid') ? $vcaf9b6b99962bf5c2264824231d7a40c->getAttribute('guid') : null;
     $vb068931cc450442b63f5b3d276ea4297 = $vcaf9b6b99962bf5c2264824231d7a40c->hasAttribute('name') ? $vcaf9b6b99962bf5c2264824231d7a40c->getAttribute('name') : null;
     $v5f6492d9717ccf1b8566bd4bc64110b6 = $vcaf9b6b99962bf5c2264824231d7a40c->getAttribute('type-id');
     $vdff819de3d610895b1bdf4168281488c = $vcaf9b6b99962bf5c2264824231d7a40c->getAttribute('update-only') == '1';
     $v1945c9a2a5e2ba6133f1db6757a35fcb = $vcaf9b6b99962bf5c2264824231d7a40c->getAttribute('locked');
     $vdb6d9b451b818ccc9a449383f2f0c450 = umiObjectsCollection::getInstance();
     $v953e1ee8066af1b7e55300750533ddc8 = umiObjectTypesCollection::getInstance();
     $ve2fa538867c3830a859a5b17ab24644b = false;
     $vaf31437ce61345f416579830a98c91e5 = false;
     if (!is_null($v1e0ca5b1252f1f6b1e0ac91be7e7219e)) {
         $vaf31437ce61345f416579830a98c91e5 = $vdb6d9b451b818ccc9a449383f2f0c450->getObjectIdByGUID($v1e0ca5b1252f1f6b1e0ac91be7e7219e);
         if ($vaf31437ce61345f416579830a98c91e5 && $vaf31437ce61345f416579830a98c91e5 != $this->relations->getNewObjectIdRelation($this->source_id, $v61ce6a78cb3c8547fed20990c92edfe3)) {
             $this->relations->setObjectIdRelation($this->source_id, $v61ce6a78cb3c8547fed20990c92edfe3, $vaf31437ce61345f416579830a98c91e5);
         }
     }
     if (!$vaf31437ce61345f416579830a98c91e5) {
         $vaf31437ce61345f416579830a98c91e5 = $this->relations->getNewObjectIdRelation($this->source_id, $v61ce6a78cb3c8547fed20990c92edfe3);
     }
     if ($vaf31437ce61345f416579830a98c91e5 && $this->update_ignore) {
         $this->writeLog($this->getLabel('label-object') . " \"" . $vb068931cc450442b63f5b3d276ea4297 . "\" (#{$v61ce6a78cb3c8547fed20990c92edfe3}) " . $this->getLabel('label-already-exists'));
         return $vdb6d9b451b818ccc9a449383f2f0c450->getObject($vaf31437ce61345f416579830a98c91e5);
     }
     if (!$vaf31437ce61345f416579830a98c91e5) {
         if ($vdff819de3d610895b1bdf4168281488c) {
             return false;
         }
         if (!$vb068931cc450442b63f5b3d276ea4297) {
             $vb068931cc450442b63f5b3d276ea4297 = $v61ce6a78cb3c8547fed20990c92edfe3;
         }
         if (!strlen($v5f6492d9717ccf1b8566bd4bc64110b6)) {
             $this->reportError($this->getLabel('label-cannot-create-object') . " \"{$vb068931cc450442b63f5b3d276ea4297}\" (#{$v61ce6a78cb3c8547fed20990c92edfe3}): " . $this->getLabel('label-cannot-detect-type'));
             return false;
         }
         $v94757cae63fd3e398c0811a976dd6bbe = $this->relations->getNewTypeIdRelation($this->source_id, $v5f6492d9717ccf1b8566bd4bc64110b6);
         $v599dcce2998a6b40b1e38e8c6006cb0a = $v953e1ee8066af1b7e55300750533ddc8->getType($v94757cae63fd3e398c0811a976dd6bbe);
         if (!$v599dcce2998a6b40b1e38e8c6006cb0a instanceof umiObjectType) {
             $this->reportError($this->getLabel('label-cannot-create-object') . " \"{$vb068931cc450442b63f5b3d276ea4297}\" (#{$v61ce6a78cb3c8547fed20990c92edfe3}): " . $this->getLabel('label-cannot-detect-type') . " #{$v5f6492d9717ccf1b8566bd4bc64110b6}");
             return false;
         }
         if ($this->demosite_mode) {
             $vacf567c9c3d6cf7c6e2cc0ce108e0631 = $v599dcce2998a6b40b1e38e8c6006cb0a->getHierarchyTypeId();
             if ($vacf567c9c3d6cf7c6e2cc0ce108e0631) {
                 $v89b0b9deff65f8b9cd1f71bc74ce36ba = umiHierarchyTypesCollection::getInstance()->getType($vacf567c9c3d6cf7c6e2cc0ce108e0631);
                 if ($v89b0b9deff65f8b9cd1f71bc74ce36ba instanceof umiHierarchyType) {
                     $v22884db148f0ffb0d830ba431102b0b5 = $v89b0b9deff65f8b9cd1f71bc74ce36ba->getModule();
                     if (!regedit::getInstance()->getVal("//modules/{$v22884db148f0ffb0d830ba431102b0b5}")) {
                         return false;
                     }
                 }
             }
         }
         $v161c9aaa4fe035e7b2f465bc59f3ab45 = new umiEventPoint("exchangeOnAddObject");
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("source_id", $this->source_id);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setMode("before");
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("old_object_id", $v61ce6a78cb3c8547fed20990c92edfe3);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("object_info", $vcaf9b6b99962bf5c2264824231d7a40c);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("type", $v599dcce2998a6b40b1e38e8c6006cb0a);
         umiEventsController::getInstance()->callEvent($v161c9aaa4fe035e7b2f465bc59f3ab45);
         $vaf31437ce61345f416579830a98c91e5 = $vdb6d9b451b818ccc9a449383f2f0c450->addObject($vb068931cc450442b63f5b3d276ea4297, $v94757cae63fd3e398c0811a976dd6bbe, $v1945c9a2a5e2ba6133f1db6757a35fcb == 'locked' || $v1945c9a2a5e2ba6133f1db6757a35fcb == '1');
         $this->relations->setObjectIdRelation($this->source_id, $v61ce6a78cb3c8547fed20990c92edfe3, $vaf31437ce61345f416579830a98c91e5);
         $ve2fa538867c3830a859a5b17ab24644b = true;
     }
     $va8cfde6331bd59eb2ac96f8911c4b666 = $vdb6d9b451b818ccc9a449383f2f0c450->getObject($vaf31437ce61345f416579830a98c91e5);
     if (!$va8cfde6331bd59eb2ac96f8911c4b666 instanceof umiObject) {
         return false;
     }
     if (!is_null($v1e0ca5b1252f1f6b1e0ac91be7e7219e)) {
         $va8cfde6331bd59eb2ac96f8911c4b666->setGUID($v1e0ca5b1252f1f6b1e0ac91be7e7219e);
     }
     if (!$ve2fa538867c3830a859a5b17ab24644b) {
         $v161c9aaa4fe035e7b2f465bc59f3ab45 = new umiEventPoint("exchangeOnUpdateObject");
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("source_id", $this->source_id);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setMode("before");
         $v161c9aaa4fe035e7b2f465bc59f3ab45->addRef("object", $va8cfde6331bd59eb2ac96f8911c4b666);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("object_info", $vcaf9b6b99962bf5c2264824231d7a40c);
         umiEventsController::getInstance()->callEvent($v161c9aaa4fe035e7b2f465bc59f3ab45);
     }
     if (!is_null($vb068931cc450442b63f5b3d276ea4297)) {
         $va8cfde6331bd59eb2ac96f8911c4b666->setName($vb068931cc450442b63f5b3d276ea4297);
     }
     $this->importPropValues($va8cfde6331bd59eb2ac96f8911c4b666, $vcaf9b6b99962bf5c2264824231d7a40c, $ve2fa538867c3830a859a5b17ab24644b);
     if ($ve2fa538867c3830a859a5b17ab24644b) {
         $this->created_objects++;
         $this->writeLog($this->getLabel('label-object') . " \"" . $va8cfde6331bd59eb2ac96f8911c4b666->getName() . "\" (" . $v61ce6a78cb3c8547fed20990c92edfe3 . ") " . $this->getLabel('label-has-been-created-m'));
     } elseif ($va8cfde6331bd59eb2ac96f8911c4b666->getIsUpdated()) {
         $this->updated_objects++;
         $this->writeLog($this->getLabel('label-object') . " \"" . $va8cfde6331bd59eb2ac96f8911c4b666->getName() . "\" (" . $v61ce6a78cb3c8547fed20990c92edfe3 . ") " . $this->getLabel('label-has-been-updated-m'));
     }
     if ($ve2fa538867c3830a859a5b17ab24644b) {
         $v161c9aaa4fe035e7b2f465bc59f3ab45 = new umiEventPoint("exchangeOnAddObject");
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("source_id", $this->source_id);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setMode("after");
         $v161c9aaa4fe035e7b2f465bc59f3ab45->addRef("object", $va8cfde6331bd59eb2ac96f8911c4b666);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("object_info", $vcaf9b6b99962bf5c2264824231d7a40c);
         umiEventsController::getInstance()->callEvent($v161c9aaa4fe035e7b2f465bc59f3ab45);
     } else {
         $v161c9aaa4fe035e7b2f465bc59f3ab45 = new umiEventPoint("exchangeOnUpdateObject");
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("source_id", $this->source_id);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setMode("after");
         $v161c9aaa4fe035e7b2f465bc59f3ab45->addRef("object", $va8cfde6331bd59eb2ac96f8911c4b666);
         $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("object_info", $vcaf9b6b99962bf5c2264824231d7a40c);
         umiEventsController::getInstance()->callEvent($v161c9aaa4fe035e7b2f465bc59f3ab45);
     }
     $va8cfde6331bd59eb2ac96f8911c4b666->commit();
     $vdb6d9b451b818ccc9a449383f2f0c450->unloadObject($vaf31437ce61345f416579830a98c91e5);
     return $va8cfde6331bd59eb2ac96f8911c4b666;
 }
Ejemplo n.º 9
0
		public function registrate_do($template = "default") {
			if ($this->is_auth()) {
				$this->redirect($this->pre_lang . "/");
			}
			if (!($template = getRequest('template'))) {
				$template = 'default';
			}
			$objectTypes = umiObjectTypesCollection::getInstance();
			$regedit = regedit::getInstance();

			$refererUrl = getServer('HTTP_REFERER');
			$without_act = (bool) $regedit->getVal("//modules/users/without_act");

			$objectTypeId	= $objectTypes->getBaseType("users",	"user");
			if ($customObjectTypeId = getRequest('type-id')) {
				$childClasses = $objectTypes->getChildClasses($objectTypeId);
				if (in_array($customObjectTypeId, $childClasses)) {
					$objectTypeId = $customObjectTypeId;
				}
			}

			$objectType = $objectTypes->getType($objectTypeId);

			$this->errorSetErrorPage($refererUrl);

			$login = $this->validateLogin(getRequest('login'), false, true);
			$password = $this->validatePassword(getRequest('password'), getRequest('password_confirm'), getRequest('login'), true);
			$email = $this->validateEmail(getRequest('email'), false, !$without_act);

			//Captcha validation
			if (isset($_REQUEST['captcha'])) {
				$_SESSION['user_captcha'] = md5((int) getRequest('captcha'));
			}

			if (!umiCaptcha::checkCaptcha()) {
				$this->errorAddErrors('errors_wrong_captcha');
			}

			$this->errorThrow('public');

			$oEventPoint = new umiEventPoint("users_registrate");
			$oEventPoint->setMode("before");
			$oEventPoint->setParam("login",	$login);
			$oEventPoint->addRef("password", $password);
			$oEventPoint->addRef("email", $email);
			$this->setEventPoint($oEventPoint);

			//Creating user...
			$objectId = umiObjectsCollection::getInstance()->addObject($login, $objectTypeId);
			$activationCode = md5($login . time());

			$object = umiObjectsCollection::getInstance()->getObject($objectId);

			$object->setValue("login", $login);
			$object->setValue("password", md5($password));
			$object->setValue("e-mail", $email);

			$object->setValue("is_activated", $without_act);
			$object->setValue("activate_code", $activationCode);
			$object->setValue("referer", urldecode(getSession("http_referer")));
			$object->setValue("target", urldecode(getSession("http_target")));
			$object->setValue("register_date", umiDate::getCurrentTimeStamp());
			$object->setValue("referer", getSession("http_referer"));
			$object->setValue("target", getSession("http_target"));
			$object->setValue("register_date", umiDate::getCurrentTimeStamp());

			if ($without_act) {
				$_SESSION['cms_login'] = $login;
				$_SESSION['cms_pass'] = md5($password);
				$_SESSION['user_id'] = $objectId;

				session_commit();
			}

			$group_id = regedit::getInstance()->getVal("//modules/users/def_group");
			$object->setValue("groups", Array($group_id));

			cmsController::getInstance()->getModule('data');
			$data_module = cmsController::getInstance()->getModule('data');
			$data_module->saveEditedObject($objectId, true);

			$object->commit();

			if ($eshop_module = cmsController::getInstance()->getModule('eshop')) {
				$eshop_module->discountCardSave($objectId);
			}

			//Forming mail...
			list(
				$template_mail, $template_mail_subject, $template_mail_noactivation, $template_mail_subject_noactivation
			) = def_module::loadTemplatesForMail("users/register/".$template,
				"mail_registrated", "mail_registrated_subject", "mail_registrated_noactivation", "mail_registrated_subject_noactivation"
			);

			if ($without_act && $template_mail_noactivation && $template_mail_subject_noactivation) {
				$template_mail = $template_mail_noactivation;
				$template_mail_subject = $template_mail_subject_noactivation;
			}

			$mailData = array(
				'user_id' => $objectId,
				'domain' => $domain = $_SERVER['HTTP_HOST'],
				'activate_link' => "http://" . $domain . $this->pre_lang . "/users/activate/" . $activationCode . "/",
				'login' => $login,
				'password' => $password,
				'lname' => $object->getValue("lname"),
				'fname' => $object->getValue("fname"),
				'father_name' => $object->getValue("father_name"),
			);

			$mailContent = def_module::parseTemplateForMail($template_mail, $mailData, false, $objectId);
			$mailSubject = def_module::parseTemplateForMail($template_mail_subject, $mailData, false, $objectId);

			$fio = $object->getValue("lname") . " " . $object->getValue("fname") . " " . $object->getValue("father_name");

			$email_from = regedit::getInstance()->getVal("//settings/email_from");
			$fio_from = regedit::getInstance()->getVal("//settings/fio_from");


			$registrationMail = new umiMail();
			$registrationMail->addRecipient($email, $fio);
			$registrationMail->setFrom($email_from, $fio_from);
			$registrationMail->setSubject($mailSubject);
			$registrationMail->setContent($mailContent);
			$registrationMail->commit();
			$registrationMail->send();

			$oEventPoint = new umiEventPoint("users_registrate");
			$oEventPoint->setMode("after");
			$oEventPoint->setParam("user_id", $objectId);
			$oEventPoint->setParam("login", $login);
			$this->setEventPoint($oEventPoint);

			if ($without_act) {
				$this->redirect($this->pre_lang . "/users/registrate_done/?result=without_activation");
			} else {
				$this->redirect($this->pre_lang . "/users/registrate_done/");
			}
		}
Ejemplo n.º 10
0
 protected function importElement($vfc07ae6b81515e9c73cb36ac08488ca1)
 {
     $this->importedElements += 1;
     $v2114c8075d855b3cea53d5d880c68948 = $vfc07ae6b81515e9c73cb36ac08488ca1['old_element_id'];
     $v75cacdb2219ff0da09cc2f909ea64759 = $vfc07ae6b81515e9c73cb36ac08488ca1['old_element_object_id'];
     $v777ccf80e4e83a9e7cdddd6ebc1edff7 = umiImportRelations::getInstance()->getNewIdRelation($this->source_id, $v2114c8075d855b3cea53d5d880c68948);
     $v161c9aaa4fe035e7b2f465bc59f3ab45 = new umiEventPoint("import_element");
     $v161c9aaa4fe035e7b2f465bc59f3ab45->setMode("before");
     $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("new_element_id", $v777ccf80e4e83a9e7cdddd6ebc1edff7);
     $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("old_element_id", $v2114c8075d855b3cea53d5d880c68948);
     $v161c9aaa4fe035e7b2f465bc59f3ab45->addRef("element_info", $vfc07ae6b81515e9c73cb36ac08488ca1);
     $v161c9aaa4fe035e7b2f465bc59f3ab45->addRef("props", $this->xml_objects[$v75cacdb2219ff0da09cc2f909ea64759]['props']);
     umiEventsController::getInstance()->callEvent($v161c9aaa4fe035e7b2f465bc59f3ab45);
     $v28b2e67839ab215dcac5f868963f2bcb = $vfc07ae6b81515e9c73cb36ac08488ca1['old_parent_id'];
     $this->importedElementsArr[] = $v2114c8075d855b3cea53d5d880c68948;
     $v10b04069381b2fef4e0a41e0ea65b914 = $vfc07ae6b81515e9c73cb36ac08488ca1['element_name'];
     $v9c668e7b8b95154aabe003bcfd8e15df = $vfc07ae6b81515e9c73cb36ac08488ca1['old_element_alt_name'];
     $v2741adf691b2acf0359a6a73234bc605 = $vfc07ae6b81515e9c73cb36ac08488ca1['old_type_id'];
     $v53f070b923b86cc3c1b95e9950674c7c = $vfc07ae6b81515e9c73cb36ac08488ca1['element_is_active'];
     $v712546bad453a4d99cb79be316f6e64b = $vfc07ae6b81515e9c73cb36ac08488ca1['element_is_visible'];
     $v25f5c3dfce7a3048a8e9f70bad15bdd3 = $vfc07ae6b81515e9c73cb36ac08488ca1['element_is_deleted'];
     if ($v9c668e7b8b95154aabe003bcfd8e15df) {
         $vd84ff935144e00c3e1d395c2379aca47 = $v9c668e7b8b95154aabe003bcfd8e15df;
     } else {
         $vd84ff935144e00c3e1d395c2379aca47 = $v10b04069381b2fef4e0a41e0ea65b914;
     }
     $vd84ff935144e00c3e1d395c2379aca47 = translit::convert($vd84ff935144e00c3e1d395c2379aca47);
     if ($v25f5c3dfce7a3048a8e9f70bad15bdd3 !== NULL) {
         if ($v25f5c3dfce7a3048a8e9f70bad15bdd3) {
             umiHierarchy::getInstance()->delElement($v777ccf80e4e83a9e7cdddd6ebc1edff7);
             $this->importLog[] = "Element \"" . $v10b04069381b2fef4e0a41e0ea65b914 . "\" (" . $v2114c8075d855b3cea53d5d880c68948 . ") has been deleted";
             $this->deletedElements++;
             return true;
         }
     }
     if ($v28b2e67839ab215dcac5f868963f2bcb === "0") {
         $v0a4066771994dd2315e8a742e4de72fc = $v28b2e67839ab215dcac5f868963f2bcb;
     } else {
         $v0a4066771994dd2315e8a742e4de72fc = umiImportRelations::getInstance()->getNewIdRelation($this->source_id, $v28b2e67839ab215dcac5f868963f2bcb);
     }
     if ($v0a4066771994dd2315e8a742e4de72fc === false) {
         $v0a4066771994dd2315e8a742e4de72fc = $this->destination_element_id;
     }
     $v3252048a9dc6701c34b83c15c5be40f7 = false;
     if ($v777ccf80e4e83a9e7cdddd6ebc1edff7 === false && $v0a4066771994dd2315e8a742e4de72fc !== false) {
         $v555b8759c62b778531f7d10a1cfc1252 = $vfc07ae6b81515e9c73cb36ac08488ca1['new_domain_id'];
         $ve795657a63adabb22cdc79a959474fdd = $vfc07ae6b81515e9c73cb36ac08488ca1['new_lang_id'];
         $v5b4c55fc70f920b984055561aff116b3 = $vfc07ae6b81515e9c73cb36ac08488ca1['element_hierarchy_type_id'];
         $ve274c3c0bb91d6582078fbbce8f388f6 = $vfc07ae6b81515e9c73cb36ac08488ca1['new_tpl_id'];
         $v69203671ddb68b3848f87700fe06de55 = $vfc07ae6b81515e9c73cb36ac08488ca1['new_type_id'];
         $v616300e8f201203152145e6776ad27d1 = umiImportRelations::getInstance()->getNewIdRelation($this->source_id, $v28b2e67839ab215dcac5f868963f2bcb);
         $v777ccf80e4e83a9e7cdddd6ebc1edff7 = umiHierarchy::getInstance()->addElement($v0a4066771994dd2315e8a742e4de72fc, $v5b4c55fc70f920b984055561aff116b3, $v10b04069381b2fef4e0a41e0ea65b914, $vd84ff935144e00c3e1d395c2379aca47, $v69203671ddb68b3848f87700fe06de55, $v555b8759c62b778531f7d10a1cfc1252, $ve795657a63adabb22cdc79a959474fdd, $ve274c3c0bb91d6582078fbbce8f388f6);
         umiImportRelations::getInstance()->setIdRelation($this->source_id, $v2114c8075d855b3cea53d5d880c68948, $v777ccf80e4e83a9e7cdddd6ebc1edff7);
         if ($v777ccf80e4e83a9e7cdddd6ebc1edff7) {
             $v3252048a9dc6701c34b83c15c5be40f7 = true;
         }
     }
     permissionsCollection::getInstance()->setDefaultPermissions($v777ccf80e4e83a9e7cdddd6ebc1edff7);
     $v691b2ea4f2db17699a29da0c302a91ea = umiHierarchy::getInstance()->getElement($v777ccf80e4e83a9e7cdddd6ebc1edff7, true, true);
     if (!$v691b2ea4f2db17699a29da0c302a91ea instanceof umiHierarchyElement) {
         $this->importLog[] = "Can't create element \"{$v10b04069381b2fef4e0a41e0ea65b914}\" ({$v2114c8075d855b3cea53d5d880c68948})";
         $this->importErrors++;
         return false;
     }
     $v161c9aaa4fe035e7b2f465bc59f3ab45 = new umiEventPoint("import_element");
     $v161c9aaa4fe035e7b2f465bc59f3ab45->setMode("process");
     $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("new_element", $v691b2ea4f2db17699a29da0c302a91ea);
     $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("old_element_id", $v2114c8075d855b3cea53d5d880c68948);
     $v161c9aaa4fe035e7b2f465bc59f3ab45->addRef("element_info", $vfc07ae6b81515e9c73cb36ac08488ca1);
     $v161c9aaa4fe035e7b2f465bc59f3ab45->addRef("props", $this->xml_objects[$v75cacdb2219ff0da09cc2f909ea64759]['props']);
     umiEventsController::getInstance()->callEvent($v161c9aaa4fe035e7b2f465bc59f3ab45);
     if ($v53f070b923b86cc3c1b95e9950674c7c !== NULL) {
         $v691b2ea4f2db17699a29da0c302a91ea->setIsActive($v53f070b923b86cc3c1b95e9950674c7c);
     }
     if ($v712546bad453a4d99cb79be316f6e64b !== NULL) {
         $v691b2ea4f2db17699a29da0c302a91ea->setIsVisible($v712546bad453a4d99cb79be316f6e64b);
     }
     if ($vd84ff935144e00c3e1d395c2379aca47) {
         $v691b2ea4f2db17699a29da0c302a91ea->setAltName($vd84ff935144e00c3e1d395c2379aca47);
     }
     if ($v10b04069381b2fef4e0a41e0ea65b914) {
         $v691b2ea4f2db17699a29da0c302a91ea->setName($v10b04069381b2fef4e0a41e0ea65b914);
     }
     $v82e85d12802becdae851373fcc70c4ff = array();
     $v50fe03ab7bf37089a7e88da9b31ffb3b = $this->xml_objects[$v75cacdb2219ff0da09cc2f909ea64759]['props'];
     foreach ($v50fe03ab7bf37089a7e88da9b31ffb3b as $vdfc394bd05a4b48161c790034af522a8 => $v410e0a26c217dfabf8a5653e8f9e68ef) {
         $v2771be291c4a714ca95fd1f45a32403e = $v410e0a26c217dfabf8a5653e8f9e68ef['values'];
         $v519504d7d4beb745dac24ccfb6c1d7c9 = $v410e0a26c217dfabf8a5653e8f9e68ef['field_type'];
         if ($v519504d7d4beb745dac24ccfb6c1d7c9 == "img_file") {
             if (isset($v2771be291c4a714ca95fd1f45a32403e[0])) {
                 $v2771be291c4a714ca95fd1f45a32403e[0] = new umiImageFile($v2771be291c4a714ca95fd1f45a32403e[0]);
             }
         }
         $vdfc394bd05a4b48161c790034af522a8 = translit::convert($vdfc394bd05a4b48161c790034af522a8);
         if ($v691b2ea4f2db17699a29da0c302a91ea->getObject()->getPropByName($vdfc394bd05a4b48161c790034af522a8)) {
             if ($v519504d7d4beb745dac24ccfb6c1d7c9 == 'price' && strlen($v410e0a26c217dfabf8a5653e8f9e68ef['currency_code'])) {
                 $vfcaea7edd270964cc145ea48e4367d43 = cmsController::getInstance()->getModule('emarket');
                 if ($vfcaea7edd270964cc145ea48e4367d43) {
                     $v78a5eb43deef9a7b5b9ce157b9d52ac4 = isset($v2771be291c4a714ca95fd1f45a32403e[0]) ? floatval($v2771be291c4a714ca95fd1f45a32403e[0]) : 0;
                     $v1af0389838508d7016a9841eb6273962 = $vfcaea7edd270964cc145ea48e4367d43->getCurrency($v410e0a26c217dfabf8a5653e8f9e68ef['currency_code']);
                     if ($v1af0389838508d7016a9841eb6273962) {
                         $v30de5920b8dd5258394e19caa86bbe80 = $vfcaea7edd270964cc145ea48e4367d43->formatCurrencyPrice(array($v78a5eb43deef9a7b5b9ce157b9d52ac4), $vfcaea7edd270964cc145ea48e4367d43->getDefaultCurrency(), $v1af0389838508d7016a9841eb6273962);
                         $v2771be291c4a714ca95fd1f45a32403e = isset($v30de5920b8dd5258394e19caa86bbe80[0]) ? floatval($v30de5920b8dd5258394e19caa86bbe80[0]) : 0;
                     }
                 }
             }
             $v691b2ea4f2db17699a29da0c302a91ea->setValue($vdfc394bd05a4b48161c790034af522a8, $v2771be291c4a714ca95fd1f45a32403e);
         } else {
             $v82e85d12802becdae851373fcc70c4ff[] = $v410e0a26c217dfabf8a5653e8f9e68ef;
         }
     }
     $this->addMissedProps($v691b2ea4f2db17699a29da0c302a91ea, $v82e85d12802becdae851373fcc70c4ff, $v2741adf691b2acf0359a6a73234bc605);
     if (count($v82e85d12802becdae851373fcc70c4ff)) {
         $v691b2ea4f2db17699a29da0c302a91ea->getObject()->update();
     }
     foreach ($v82e85d12802becdae851373fcc70c4ff as $v410e0a26c217dfabf8a5653e8f9e68ef) {
         $v2771be291c4a714ca95fd1f45a32403e = $v410e0a26c217dfabf8a5653e8f9e68ef['values'];
         $v519504d7d4beb745dac24ccfb6c1d7c9 = $v410e0a26c217dfabf8a5653e8f9e68ef['field_type'];
         if ($v519504d7d4beb745dac24ccfb6c1d7c9 == "img_file") {
             if ($v2771be291c4a714ca95fd1f45a32403e[0]) {
                 $v2771be291c4a714ca95fd1f45a32403e[0] = new umiImageFile($v2771be291c4a714ca95fd1f45a32403e[0]);
             }
         }
         if (!$v410e0a26c217dfabf8a5653e8f9e68ef['name']) {
             $v410e0a26c217dfabf8a5653e8f9e68ef['name'] = translit::convert($v410e0a26c217dfabf8a5653e8f9e68ef['title']);
         }
         $v410e0a26c217dfabf8a5653e8f9e68ef['name'] = translit::convert($v410e0a26c217dfabf8a5653e8f9e68ef['name']);
         if (!$v691b2ea4f2db17699a29da0c302a91ea->setValue($v410e0a26c217dfabf8a5653e8f9e68ef['name'], $v2771be291c4a714ca95fd1f45a32403e)) {
             continue;
         }
     }
     $v691b2ea4f2db17699a29da0c302a91ea->commit();
     if ($v3252048a9dc6701c34b83c15c5be40f7) {
         $this->importLog[] = "Element \"" . $v10b04069381b2fef4e0a41e0ea65b914 . "\" (" . $v2114c8075d855b3cea53d5d880c68948 . ") has been created";
         $this->createdElements++;
     } else {
         $this->importLog[] = "Element \"" . $v10b04069381b2fef4e0a41e0ea65b914 . "\" (" . $v2114c8075d855b3cea53d5d880c68948 . ") has been updated";
         $this->updatedElements++;
     }
     $v5e949eb2c66f5d51b8a4d4185a693b3f = umiObjectProperty::$USE_FORCE_OBJECTS_CREATION;
     umiObjectProperty::$USE_FORCE_OBJECTS_CREATION = false;
     $v9dfb9e2c355fe22768c93f6e0c33f1f9 = umiObjectTypesCollection::getInstance()->getBaseType("eshop", "store");
     $v6f95a0b0f896cf9349af3afc8a2752df = umiObjectTypesCollection::getInstance()->getBaseType("eshop", "store_relation");
     $va8973f92932ba8c02915c86424eb77b0 = cmsController::getInstance()->getModule("eshop");
     if ($va8973f92932ba8c02915c86424eb77b0 && $v9dfb9e2c355fe22768c93f6e0c33f1f9 && $v6f95a0b0f896cf9349af3afc8a2752df) {
         if (isset($this->xml_stores[$v75cacdb2219ff0da09cc2f909ea64759])) {
             foreach ($this->xml_stores[$v75cacdb2219ff0da09cc2f909ea64759] as $v57f6446eb03e6af4fa631be4795f0c9b) {
                 $v4ab09853d1229afdaa2c4b00b44b4828 = $v57f6446eb03e6af4fa631be4795f0c9b['old_store_id'];
                 $vbd047b181e82cec3af1400e7ee193be5 = $v57f6446eb03e6af4fa631be4795f0c9b['amount'];
                 $vb137c8149c716d240351a4b96434a60c = $this->getStoreIdByName($v4ab09853d1229afdaa2c4b00b44b4828);
                 if ($vb137c8149c716d240351a4b96434a60c === false) {
                     $vb137c8149c716d240351a4b96434a60c = umiObjectsCollection::getInstance()->addObject($v4ab09853d1229afdaa2c4b00b44b4828, $v9dfb9e2c355fe22768c93f6e0c33f1f9);
                 }
                 $vd47cbc7965be6318a50b0b921e4de391 = umiObjectsCollection::getInstance()->getObject($vb137c8149c716d240351a4b96434a60c);
                 if ($vd47cbc7965be6318a50b0b921e4de391 instanceof umiObject) {
                     $vd47cbc7965be6318a50b0b921e4de391->setName($v4ab09853d1229afdaa2c4b00b44b4828);
                     $vd47cbc7965be6318a50b0b921e4de391->commit();
                     $va8973f92932ba8c02915c86424eb77b0->setStoreAmount($v691b2ea4f2db17699a29da0c302a91ea->getId(), $vb137c8149c716d240351a4b96434a60c, $vbd047b181e82cec3af1400e7ee193be5);
                 }
             }
         }
     }
     umiObjectProperty::$USE_FORCE_OBJECTS_CREATION = $v5e949eb2c66f5d51b8a4d4185a693b3f;
     $v161c9aaa4fe035e7b2f465bc59f3ab45 = new umiEventPoint("import_element");
     $v161c9aaa4fe035e7b2f465bc59f3ab45->setMode("after");
     $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("new_element_id", $v777ccf80e4e83a9e7cdddd6ebc1edff7);
     $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("old_element_id", $v2114c8075d855b3cea53d5d880c68948);
     $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("element_info", $vfc07ae6b81515e9c73cb36ac08488ca1);
     umiEventsController::getInstance()->callEvent($v161c9aaa4fe035e7b2f465bc59f3ab45);
     umiHierarchy::getInstance()->unloadElement($v777ccf80e4e83a9e7cdddd6ebc1edff7);
 }
Ejemplo n.º 11
0
 /**
  * Пересчитать содержимое корзины
  */
 public function refresh()
 {
     $object = $this->object;
     $items = $this->getItems();
     $originalPrice = 0;
     $totalAmount = 0;
     $eventPoint = new umiEventPoint("order_refresh");
     $eventPoint->setMode('before');
     $eventPoint->addRef("order", $object);
     $eventPoint->setParam("items", $items);
     $eventPoint->call();
     foreach ($items as $item) {
         $succ = $item->refresh();
         if ($succ === false) {
             $this->removeItem($item);
             continue;
         }
         $originalPrice += $item->getTotalActualPrice();
         $totalAmount += $item->getAmount();
     }
     $discount = $this->searchDiscount();
     if ($discount instanceof orderDiscount) {
         $actualPrice = $discount->recalcPrice($originalPrice);
     } else {
         $actualPrice = $originalPrice;
     }
     $actualPrice += (double) $this->delivery_price;
     $actualPrice -= (double) $this->getBonusDiscount();
     $eventPoint->setMode('after');
     $eventPoint->setParam("originalPrice", $originalPrice);
     $eventPoint->setParam("totalAmount", $totalAmount);
     $eventPoint->addRef("actualPrice", $actualPrice);
     $eventPoint->call();
     $this->originalPrice = $originalPrice;
     $this->actualPrice = $actualPrice;
     $this->totalAmount = $totalAmount;
     $this->discount = $discount;
     $this->commit();
 }
Ejemplo n.º 12
0
 public function frontendPanel()
 {
     $permissions = permissionsCollection::getInstance();
     $cmsController = cmsController::getInstance();
     $maxRecentPages = 5;
     $this->flushAsXml('frontendPanel');
     $modules = array();
     $modulesSortedPriorityList = $this->getSortedModulesList();
     foreach ($modulesSortedPriorityList as $moduleInfo) {
         $modules[] = array('attribute:label' => $moduleInfo['label'], 'attribute:type' => $moduleInfo['type'], 'node:name' => $moduleInfo['name']);
     }
     $hierarchy = umiHierarchy::getInstance();
     $key = md5(getServer('HTTP_REFERER'));
     $currentIds = is_array(getSession($key)) ? getSession($key) : array();
     foreach ($currentIds as $i => $id) {
         $currentIds[$i] = $id[2];
     }
     $currentIds = array_unique($currentIds);
     $current = array();
     foreach ($currentIds as $id) {
         $current[] = $hierarchy->getElement($id);
     }
     $recent = new selector('pages');
     $recent->where('is_deleted')->equals(0);
     $recent->where('is_active')->equals(1);
     $recent->where('lang')->equals(langsCollection::getInstance()->getList());
     $recent->order('updatetime')->desc();
     $recent->limit(0, $maxRecentPages);
     if (sizeof($currentIds) && $permissions->isAllowedModule($permissions->getUserId(), 'backup')) {
         $backup = $cmsController->getModule('backup');
         $changelog = $backup->backup_panel($currentIds[0]);
     } else {
         $changelog = null;
     }
     $user = selector::get('object')->id($permissions->getUserId());
     $referer = getRequest('referer') ? getRequest('referer') : getServer('HTTP_REFERER');
     $tickets = new selector('objects');
     $tickets->types('object-type')->name('content', 'ticket');
     $tickets->where('url')->equals($referer);
     $tickets->limit(0, 100);
     $ticketsResult = array();
     foreach ($tickets as $ticket) {
         $user = selector::get('object')->id($ticket->user_id);
         if (!$user) {
             continue;
         }
         $ticketsResult[] = array('attribute:id' => $ticket->id, 'author' => array('attribute:fname' => $user->fname, 'attribute:lname' => $user->lname, 'attribute:login' => $user->login), 'position' => array('attribute:x' => $ticket->x, 'attribute:y' => $ticket->y, 'attribute:width' => $ticket->width, 'attribute:height' => $ticket->height), 'message' => $ticket->message);
     }
     $result = array('user' => array('attribute:id' => $user->id, 'attribute:fname' => $user->fname, 'attribute:lname' => $user->lname, 'attribute:login' => $user->login), 'tickets' => array('nodes:ticket' => $ticketsResult), 'modules' => array('nodes:module' => $modules), 'documents' => array('editable' => array('nodes:page' => $current), 'recent' => array('nodes:page' => $recent->result())));
     if (!$permissions->isAllowedMethod($permissions->getUserId(), 'content', 'tickets')) {
         unset($result['tickets']);
     }
     if ($changelog && sizeof($changelog['nodes:revision'])) {
         $result['changelog'] = $changelog;
     }
     $event = new umiEventPoint('eipFrontendPanelGet');
     $event->setParam("id", getArrayKey($currentIds, 0));
     $event->addRef("result", $result);
     $event->setMode('after');
     $event->call();
     return $result;
 }
Ejemplo n.º 13
0
 /**
  * Пересчитать параметры наименования и обновить свойства наименования в БД
  */
 public function refresh()
 {
     $element = $this->getItemElement();
     if (!$element) {
         return false;
     }
     $eventPoint = new umiEventPoint("orderItem_refresh");
     $eventPoint->setMode('before');
     $eventPoint->addRef("orderItem", $this);
     $eventPoint->call();
     $discount = itemDiscount::search($element);
     $this->setDiscount($discount);
     $totalOriginalPrice = $this->getItemPrice() * $this->amount;
     if ($discount instanceof itemDiscount) {
         $totalActualPrice = $discount->recalcPrice($totalOriginalPrice);
     } else {
         $totalActualPrice = $totalOriginalPrice;
     }
     $eventPoint->setMode('after');
     $eventPoint->setParam("totalOriginalPrice", $totalOriginalPrice);
     $eventPoint->addRef("totalActualPrice", $totalActualPrice);
     $eventPoint->call();
     $this->totalOriginalPrice = $totalOriginalPrice;
     $this->totalActualPrice = $totalActualPrice;
     $this->commit();
     return true;
 }
Ejemplo n.º 14
0
 public function deleteObject($v21ffce5b8a6cc8cc6a41448dd69623c9)
 {
     $v69ae498121c2d8e63f20c7144a0246d7 = umiObjectsCollection::getInstance();
     $v9b81909fd0da3add2602a8d0ede0e4e7 = umiObjectTypesCollection::getInstance();
     $v1723bdd4ee51910267a625cae41ced8a = umiHierarchyTypesCollection::getInstance();
     $va8cfde6331bd59eb2ac96f8911c4b666 = getArrayKey($v21ffce5b8a6cc8cc6a41448dd69623c9, 'object');
     if ($va8cfde6331bd59eb2ac96f8911c4b666 instanceof umiObject == false) {
         throw new coreException("You should pass \"object\" key containing umiObject instance.");
     }
     $vaf31437ce61345f416579830a98c91e5 = $va8cfde6331bd59eb2ac96f8911c4b666->getId();
     $v87306dd4235ed712ebc07fe169b76f83 = $va8cfde6331bd59eb2ac96f8911c4b666->getTypeId();
     $v7ae7003da59ae71dcc9f8638ef50593d = $v9b81909fd0da3add2602a8d0ede0e4e7->getType($v87306dd4235ed712ebc07fe169b76f83);
     if ($v7ae7003da59ae71dcc9f8638ef50593d instanceof umiObjectType == false) {
         throw new coreException("Object #{$vaf31437ce61345f416579830a98c91e5} hasn't type #{$v87306dd4235ed712ebc07fe169b76f83}. This should not happen.");
     }
     if (!is_null(getArrayKey($v21ffce5b8a6cc8cc6a41448dd69623c9, 'type'))) {
         $v0715f6d9497f93911417c9c324265771 = $v7ae7003da59ae71dcc9f8638ef50593d->getHierarchyTypeId();
         $vb946c44d711ade3b061653732977d043 = $v1723bdd4ee51910267a625cae41ced8a->getType($v0715f6d9497f93911417c9c324265771);
         if ($vb946c44d711ade3b061653732977d043 instanceof iUmiHierarchyType == false) {
             throw new coreException("Object type #{$v87306dd4235ed712ebc07fe169b76f83} doesn't have hierarchy type #{$v0715f6d9497f93911417c9c324265771}. This should not happen.");
         }
         $v21ffce5b8a6cc8cc6a41448dd69623c9['type'] = $vb946c44d711ade3b061653732977d043->getExt();
         if ($this->checkAllowedElementType($v21ffce5b8a6cc8cc6a41448dd69623c9) == false) {
             throw new wrongElementTypeAdminException(getLabel("error-unexpected-element-type"));
         }
     }
     $v4119639092e62c55ea8be348e4d9260d = new umiEventPoint("systemDeleteObject");
     $v4119639092e62c55ea8be348e4d9260d->addRef("object", $va8cfde6331bd59eb2ac96f8911c4b666);
     $v4119639092e62c55ea8be348e4d9260d->setMode("before");
     $v4119639092e62c55ea8be348e4d9260d->call();
     $result = $v69ae498121c2d8e63f20c7144a0246d7->delObject($vaf31437ce61345f416579830a98c91e5);
     $v4119639092e62c55ea8be348e4d9260d->setMode("after");
     $v4119639092e62c55ea8be348e4d9260d->call();
     return $result;
 }