Esempio 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;
     }
 }
Esempio 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);
 }
Esempio 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'));
     }
 }
Esempio 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();
 }
Esempio n. 6
0
 public function send()
 {
     if ($this->is_sended) {
         return true;
     }
     if ($this->content != "") {
         $this->arrHeaders["From"] = ($this->from_name ? "\"" . $this->from_name . "\" " : "") . "<" . $this->from_email . ">";
         $this->arrHeaders["X-Mailer"] = "UMI.CMS";
         if (sizeof($this->reply_to)) {
             $this->arrHeaders["Reply-To"] = implode(", ", $this->reply_to);
         }
         if (sizeof($this->copy)) {
             $this->arrHeaders["Cc"] = implode(", ", $this->copy);
         }
         if (sizeof($this->hidden_copy)) {
             $this->arrHeaders["Bcc"] = implode(", ", $this->hidden_copy);
         }
         $this->arrHeaders["X-Priority"] = $this->priority;
         $v9a0364b9e99bb480dd25e1f0284c8555 = $this->parseContent();
         foreach ($this->arrContentImages as $va83269b957a782de9de17b330b439574 => $v7c610e4d8f0bc3df13a676914dbc6224) {
             if (!isset($this->arrAttachmentsImages[$v7c610e4d8f0bc3df13a676914dbc6224])) {
                 continue;
             }
             $v8b9f60798e84fcd02a6f16731fad0d75 = $this->arrAttachmentsImages[$v7c610e4d8f0bc3df13a676914dbc6224];
             $vaa5bb0b328edf04bdeade3062181e7ae = array('/(\\s)((?i)src|background|href(?-i))\\s*=\\s*(["\']?)' . preg_quote($va83269b957a782de9de17b330b439574, '/') . '\\3/', '/(?i)url(?-i)\\(\\s*(["\']?)' . preg_quote($va83269b957a782de9de17b330b439574, '/') . '\\1\\s*\\)/');
             $v765a7aaaad7c01a34106aa80b74e28b7 = array('\\1\\2=\\3cid:' . $v8b9f60798e84fcd02a6f16731fad0d75['cid'] . '\\3', 'url(\\1cid:' . $v8b9f60798e84fcd02a6f16731fad0d75['cid'] . '\\2)');
             $v9a0364b9e99bb480dd25e1f0284c8555 = preg_replace($vaa5bb0b328edf04bdeade3062181e7ae, $v765a7aaaad7c01a34106aa80b74e28b7, $v9a0364b9e99bb480dd25e1f0284c8555);
         }
         foreach ($this->files as $v3b569bcd1bf089908a7a85ead9f9ab9a) {
             $this->addAttachment($v3b569bcd1bf089908a7a85ead9f9ab9a->getFilePath());
         }
         $v46f2f0d388f714c268d510d3ddbdfe88 = (bool) count($this->arrAttachments);
         $va491666beca97718aeb4d201ac898bb5 = (bool) count($this->arrAttachmentsImages);
         $vcae3e24516df3c71ced3f01fc0ee6c65 = (bool) strlen($v9a0364b9e99bb480dd25e1f0284c8555);
         $vdb9129f4c75531384e13d0a0d7dae6e9 = (bool) strlen($this->sTxtBody);
         $v69476a86c388a5b8e4e18eeaea2ae2ba = !$vcae3e24516df3c71ced3f01fc0ee6c65 && (bool) strlen($v9a0364b9e99bb480dd25e1f0284c8555);
         $vd6d25fae8ec76ccadc5deee4ee0c4896 = new umiMimePart('', array());
         switch (true) {
             case $v69476a86c388a5b8e4e18eeaea2ae2ba && !$v46f2f0d388f714c268d510d3ddbdfe88:
                 $vd6d25fae8ec76ccadc5deee4ee0c4896 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addTextPart($this->sTxtBody);
                 break;
             case !$vcae3e24516df3c71ced3f01fc0ee6c65 && !$vdb9129f4c75531384e13d0a0d7dae6e9 && $v46f2f0d388f714c268d510d3ddbdfe88:
                 $vd6d25fae8ec76ccadc5deee4ee0c4896 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addMixedPart();
                 foreach ($this->arrAttachments as $v5d659066115284c2f4023431d517fe38) {
                     $vd6d25fae8ec76ccadc5deee4ee0c4896->addAttachmentPart($v5d659066115284c2f4023431d517fe38);
                 }
                 break;
             case $v69476a86c388a5b8e4e18eeaea2ae2ba && $v46f2f0d388f714c268d510d3ddbdfe88:
                 $vd6d25fae8ec76ccadc5deee4ee0c4896 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addMixedPart();
                 $vd6d25fae8ec76ccadc5deee4ee0c4896->addTextPart($this->sTxtBody);
                 foreach ($this->arrAttachments as $v5d659066115284c2f4023431d517fe38) {
                     $vd6d25fae8ec76ccadc5deee4ee0c4896->addAttachmentPart($v5d659066115284c2f4023431d517fe38);
                 }
                 break;
             case $vcae3e24516df3c71ced3f01fc0ee6c65 && !$va491666beca97718aeb4d201ac898bb5 && !$v46f2f0d388f714c268d510d3ddbdfe88:
                 $vd6d25fae8ec76ccadc5deee4ee0c4896 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addMixedPart();
                 if ($vdb9129f4c75531384e13d0a0d7dae6e9) {
                     $vb09cfd144243e0299ce0a896ca163843 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addAlternativePart();
                     $vb09cfd144243e0299ce0a896ca163843->addTextPart($this->sTxtBody);
                     $vb09cfd144243e0299ce0a896ca163843->addHtmlPart($v9a0364b9e99bb480dd25e1f0284c8555);
                 } else {
                     $vd6d25fae8ec76ccadc5deee4ee0c4896 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addHtmlPart($v9a0364b9e99bb480dd25e1f0284c8555);
                 }
                 break;
             case $vcae3e24516df3c71ced3f01fc0ee6c65 && $va491666beca97718aeb4d201ac898bb5 && !$v46f2f0d388f714c268d510d3ddbdfe88:
                 $vd6d25fae8ec76ccadc5deee4ee0c4896 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addRelatedPart();
                 if ($vdb9129f4c75531384e13d0a0d7dae6e9) {
                     $vb09cfd144243e0299ce0a896ca163843 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addAlternativePart();
                     $vb09cfd144243e0299ce0a896ca163843->addTextPart($this->sTxtBody);
                     $vb09cfd144243e0299ce0a896ca163843->addHtmlPart($v9a0364b9e99bb480dd25e1f0284c8555);
                 } else {
                     $vd6d25fae8ec76ccadc5deee4ee0c4896->addHtmlPart($v9a0364b9e99bb480dd25e1f0284c8555);
                 }
                 foreach ($this->arrAttachmentsImages as $v8b9f60798e84fcd02a6f16731fad0d75) {
                     $vd6d25fae8ec76ccadc5deee4ee0c4896->addHtmlImagePart($v8b9f60798e84fcd02a6f16731fad0d75);
                 }
                 break;
             case $vcae3e24516df3c71ced3f01fc0ee6c65 && !$va491666beca97718aeb4d201ac898bb5 && $v46f2f0d388f714c268d510d3ddbdfe88:
                 $vd6d25fae8ec76ccadc5deee4ee0c4896 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addMixedPart();
                 if ($vdb9129f4c75531384e13d0a0d7dae6e9) {
                     $vb09cfd144243e0299ce0a896ca163843 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addAlternativePart();
                     $vb09cfd144243e0299ce0a896ca163843->addTextPart($this->sTxtBody);
                     $vb09cfd144243e0299ce0a896ca163843->addHtmlPart($v9a0364b9e99bb480dd25e1f0284c8555);
                 } else {
                     $vd6d25fae8ec76ccadc5deee4ee0c4896->addHtmlPart($v9a0364b9e99bb480dd25e1f0284c8555);
                 }
                 foreach ($this->arrAttachments as $v5d659066115284c2f4023431d517fe38) {
                     $vd6d25fae8ec76ccadc5deee4ee0c4896->addAttachmentPart($v5d659066115284c2f4023431d517fe38);
                 }
                 break;
             case $vcae3e24516df3c71ced3f01fc0ee6c65 && $va491666beca97718aeb4d201ac898bb5 && $v46f2f0d388f714c268d510d3ddbdfe88:
                 $vd6d25fae8ec76ccadc5deee4ee0c4896 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addMixedPart();
                 if ($vdb9129f4c75531384e13d0a0d7dae6e9) {
                     $vb09cfd144243e0299ce0a896ca163843 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addAlternativePart();
                     $vb09cfd144243e0299ce0a896ca163843->addTextPart($this->sTxtBody);
                     $v692f1e5fb84fbda80e99a0ce848bc2b1 = $vb09cfd144243e0299ce0a896ca163843->addRelatedPart();
                 } else {
                     $v692f1e5fb84fbda80e99a0ce848bc2b1 = $vd6d25fae8ec76ccadc5deee4ee0c4896->addRelatedPart();
                 }
                 $v692f1e5fb84fbda80e99a0ce848bc2b1->addHtmlPart($v9a0364b9e99bb480dd25e1f0284c8555);
                 foreach ($this->arrAttachmentsImages as $v8b9f60798e84fcd02a6f16731fad0d75) {
                     $v692f1e5fb84fbda80e99a0ce848bc2b1->addHtmlImagePart($v8b9f60798e84fcd02a6f16731fad0d75);
                 }
                 foreach ($this->arrAttachments as $v5d659066115284c2f4023431d517fe38) {
                     $vd6d25fae8ec76ccadc5deee4ee0c4896->addAttachmentPart($v5d659066115284c2f4023431d517fe38);
                 }
                 break;
         }
         $v766454ac4fb7a41c6ebf95bfb8130318 = $vd6d25fae8ec76ccadc5deee4ee0c4896->encodePart();
         $this->mess_body = $v766454ac4fb7a41c6ebf95bfb8130318['body'];
         $v99b7ac2b500826e1b6e5496c094befbe = $this->getHeaders($v766454ac4fb7a41c6ebf95bfb8130318['headers'], true);
         $v5c27dddc7f7c23c046aa4f514147f839 = "";
         foreach ($v99b7ac2b500826e1b6e5496c094befbe as $vcba6edd8118e56459daee1a4a52365e1 => $v2c0f0eef009b52594d1845816b697bed) {
             $v5c27dddc7f7c23c046aa4f514147f839 .= $vcba6edd8118e56459daee1a4a52365e1 . ": " . $v2c0f0eef009b52594d1845816b697bed . umiMimePart::UMI_MIMEPART_CRLF;
         }
         foreach ($this->recipients as $ve6a967f2c984f079715d7daa3f9b5f90) {
             $v4b5789f850e658bcfb56173ae0a5b7ca = trim(str_replace("\n", " ", $ve6a967f2c984f079715d7daa3f9b5f90[1]));
             $v0a1cb7958085865f48edbe2a30158589 = trim($ve6a967f2c984f079715d7daa3f9b5f90[0]);
             if (!strlen($v0a1cb7958085865f48edbe2a30158589)) {
                 continue;
             }
             $v22c7ae03c1d7ec9ffafe48c116510eed = $v0a1cb7958085865f48edbe2a30158589;
             if (strlen($v4b5789f850e658bcfb56173ae0a5b7ca)) {
                 $v22c7ae03c1d7ec9ffafe48c116510eed = iconv_mime_encode("", $ve6a967f2c984f079715d7daa3f9b5f90[1], array('input-charset' => 'UTF-8', 'output-charset' => 'UTF-8', 'line-break-chars' => ''));
                 $v22c7ae03c1d7ec9ffafe48c116510eed = ltrim($v22c7ae03c1d7ec9ffafe48c116510eed, " :");
                 $v22c7ae03c1d7ec9ffafe48c116510eed .= " <" . $v0a1cb7958085865f48edbe2a30158589 . ">";
             }
             $v18510ea4e30a52ff7b53e7b5e2691d83 = "";
             if (strlen($this->subject)) {
                 $v18510ea4e30a52ff7b53e7b5e2691d83 = iconv_mime_encode("", $this->subject, array('input-charset' => 'UTF-8', 'output-charset' => 'UTF-8', 'line-break-chars' => ''));
                 $v18510ea4e30a52ff7b53e7b5e2691d83 = ltrim($v18510ea4e30a52ff7b53e7b5e2691d83, " :");
             }
             $v6da648158add0c53655351ff6ac29a12 = mail($v22c7ae03c1d7ec9ffafe48c116510eed, $v18510ea4e30a52ff7b53e7b5e2691d83, $this->mess_body, $v5c27dddc7f7c23c046aa4f514147f839);
             $v161c9aaa4fe035e7b2f465bc59f3ab45 = new umiEventPoint("core_sendmail");
             $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("to", $v22c7ae03c1d7ec9ffafe48c116510eed);
             $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("subject", $v18510ea4e30a52ff7b53e7b5e2691d83);
             $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("body", $this->mess_body);
             $v161c9aaa4fe035e7b2f465bc59f3ab45->setParam("headers", $v5c27dddc7f7c23c046aa4f514147f839);
             $v161c9aaa4fe035e7b2f465bc59f3ab45->setMode("after");
             $v161c9aaa4fe035e7b2f465bc59f3ab45->call();
         }
         $this->is_sended = true;
     } else {
         return false;
     }
 }
Esempio n. 7
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");
     }
 }
Esempio n. 9
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();
 }
Esempio n. 10
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;
 }
Esempio n. 11
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;
 }
Esempio n. 12
0
 public function delElement($v7057e8409c7c531a1a6e9ac3df4ed549)
 {
     $v7057e8409c7c531a1a6e9ac3df4ed549 = (int) $v7057e8409c7c531a1a6e9ac3df4ed549;
     $this->disableCache();
     $vb99eb979e6f6efabc396f777b503f7e7 = cacheFrontend::getInstance();
     $v41275a535677f79ff347e01bc530c176 = permissionsCollection::getInstance();
     $this->addUpdatedElementId($v7057e8409c7c531a1a6e9ac3df4ed549);
     $this->forceCacheCleanup();
     if (!$v41275a535677f79ff347e01bc530c176->isAllowedObject($v41275a535677f79ff347e01bc530c176->getUserId(), $v7057e8409c7c531a1a6e9ac3df4ed549)) {
         return false;
     }
     if ($v8e2dcfd7e7e24b1ca76c1193f645902b = $this->getElement($v7057e8409c7c531a1a6e9ac3df4ed549)) {
         $vac5c74b64b4b8352ef2f181affb5ac2a = "SELECT id FROM cms3_hierarchy FORCE INDEX(rel) WHERE rel = '{$v7057e8409c7c531a1a6e9ac3df4ed549}'";
         $result = l_mysql_query($vac5c74b64b4b8352ef2f181affb5ac2a);
         while (list($vf36263a38d7de5cdaa953c1e2b2f79b5) = mysql_fetch_row($result)) {
             $v2da0d90fc7822dade6effbdd1f48b458 = $this->getElement($vf36263a38d7de5cdaa953c1e2b2f79b5, true, true);
             $this->delElement($vf36263a38d7de5cdaa953c1e2b2f79b5);
             $vb99eb979e6f6efabc396f777b503f7e7->del($vf36263a38d7de5cdaa953c1e2b2f79b5, "element");
         }
         $v4119639092e62c55ea8be348e4d9260d = new umiEventPoint("hierarchyDeleteElement");
         $v4119639092e62c55ea8be348e4d9260d->setParam("element_id", $v7057e8409c7c531a1a6e9ac3df4ed549);
         $v4119639092e62c55ea8be348e4d9260d->setMode("after");
         $v4119639092e62c55ea8be348e4d9260d->call();
         $v8e2dcfd7e7e24b1ca76c1193f645902b->setIsDeleted(true);
         $v8e2dcfd7e7e24b1ca76c1193f645902b->commit();
         unset($this->elements[$v7057e8409c7c531a1a6e9ac3df4ed549]);
         $vb99eb979e6f6efabc396f777b503f7e7->del($v7057e8409c7c531a1a6e9ac3df4ed549, "element");
         return true;
     } else {
         return false;
     }
 }
 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;
 }
 public function delObject($vaf31437ce61345f416579830a98c91e5)
 {
     $v4119639092e62c55ea8be348e4d9260d = new umiEventPoint("collectionDeleteObject");
     $v4119639092e62c55ea8be348e4d9260d->setParam("object_id", $vaf31437ce61345f416579830a98c91e5);
     $v4119639092e62c55ea8be348e4d9260d->setMode("before");
     $v4119639092e62c55ea8be348e4d9260d->call();
     if ($this->isExists($vaf31437ce61345f416579830a98c91e5)) {
         $this->disableCache();
         $vaf31437ce61345f416579830a98c91e5 = (int) $vaf31437ce61345f416579830a98c91e5;
         if (defined("SV_USER_ID")) {
             if ($vaf31437ce61345f416579830a98c91e5 == SV_USER_ID || $vaf31437ce61345f416579830a98c91e5 == SV_GROUP_ID || $vaf31437ce61345f416579830a98c91e5 == $this->getObjectIdByGUID('system-guest')) {
                 throw new coreException("You are not allowed to delete object #{$vaf31437ce61345f416579830a98c91e5}. Never. Don't even try.");
             }
         }
         $va8cfde6331bd59eb2ac96f8911c4b666 = $this->getObject($vaf31437ce61345f416579830a98c91e5);
         $va8cfde6331bd59eb2ac96f8911c4b666->commit();
         $vac5c74b64b4b8352ef2f181affb5ac2a = "DELETE FROM cms3_objects WHERE id = '{$vaf31437ce61345f416579830a98c91e5}' AND is_locked='0'";
         l_mysql_query($vac5c74b64b4b8352ef2f181affb5ac2a);
         if ($v56bd7107802ebe56c6918992f0608ec6 = l_mysql_error()) {
             throw new coreException($v56bd7107802ebe56c6918992f0608ec6);
             return false;
         }
         if ($this->isLoaded($vaf31437ce61345f416579830a98c91e5)) {
             unset($this->objects[$vaf31437ce61345f416579830a98c91e5]);
         }
         cacheFrontend::getInstance()->del($vaf31437ce61345f416579830a98c91e5, "object");
         $v4119639092e62c55ea8be348e4d9260d->setMode("after");
         $v4119639092e62c55ea8be348e4d9260d->call();
         return true;
     } else {
         return false;
     }
 }