Example #1
0
 private static function renderEvent($event, $read = 0)
 {
     $eventInfo = array();
     $eventInfo['attribute:id'] = $event->getId();
     $eventInfo['attribute:type-id'] = $event->getTypeId();
     $eventInfo['attribute:read'] = (int) $read;
     $eventDate = new umiDate($event->getDate());
     $eventInfo['attribute:timestamp'] = $eventDate->getDateTimeStamp();
     $eventInfo['attribute:date'] = $eventDate->getFormattedDate('d.m.Y H:i');
     $params = $event->getParams();
     $eventInfo['node:value'] = ulangStream::getLabelSimple($event->getTypeId() . "_msg", $params);
     return $eventInfo;
 }
Example #2
0
 private static function renderEvent($v4119639092e62c55ea8be348e4d9260d, $vecae13117d6f0584c25a9da6c8f8415e = 0)
 {
     $vce3280d763b11208823de6adaa1d80dd = array();
     $vce3280d763b11208823de6adaa1d80dd['attribute:id'] = $v4119639092e62c55ea8be348e4d9260d->getId();
     $vce3280d763b11208823de6adaa1d80dd['attribute:type-id'] = $v4119639092e62c55ea8be348e4d9260d->getTypeId();
     $vce3280d763b11208823de6adaa1d80dd['attribute:read'] = (int) $vecae13117d6f0584c25a9da6c8f8415e;
     $v8314f7e7b648c91b83817a870b5857a3 = new umiDate($v4119639092e62c55ea8be348e4d9260d->getDate());
     $vce3280d763b11208823de6adaa1d80dd['attribute:timestamp'] = $v8314f7e7b648c91b83817a870b5857a3->getDateTimeStamp();
     $vce3280d763b11208823de6adaa1d80dd['attribute:date'] = $v8314f7e7b648c91b83817a870b5857a3->getFormattedDate('d.m.Y H:i');
     $v21ffce5b8a6cc8cc6a41448dd69623c9 = $v4119639092e62c55ea8be348e4d9260d->getParams();
     $vce3280d763b11208823de6adaa1d80dd['node:value'] = ulangStream::getLabelSimple($v4119639092e62c55ea8be348e4d9260d->getTypeId() . "_msg", $v21ffce5b8a6cc8cc6a41448dd69623c9);
     return $vce3280d763b11208823de6adaa1d80dd;
 }
Example #3
0
 public function __call($vea9f6aca279138c58f705c8d4cb4b8ce, $args)
 {
     $vea9f6aca279138c58f705c8d4cb4b8ce = strtolower($vea9f6aca279138c58f705c8d4cb4b8ce);
     if (in_array($vea9f6aca279138c58f705c8d4cb4b8ce, $this->modes)) {
         $v2063c1608d6e0baf80249c42e2be5804 = sizeof($args) ? $args[0] : null;
         if ($v2063c1608d6e0baf80249c42e2be5804 instanceof iUmiEntinty) {
             $v2063c1608d6e0baf80249c42e2be5804 = $v2063c1608d6e0baf80249c42e2be5804->getId();
         }
         if (isset($this->fieldId)) {
             $v06e3d36fa30cea095545139854ad1fb9 = selector::get('field')->id($this->fieldId);
             if ($v6b1a57fa235477758817df3c91158006 = $v06e3d36fa30cea095545139854ad1fb9->getRestrictionId()) {
                 $v3dadfaeb46ec74762b37de11fea7605c = baseRestriction::get($v6b1a57fa235477758817df3c91158006);
                 if ($v3dadfaeb46ec74762b37de11fea7605c instanceof iNormalizeInRestriction) {
                     $v2063c1608d6e0baf80249c42e2be5804 = $v3dadfaeb46ec74762b37de11fea7605c->normalizeIn($v2063c1608d6e0baf80249c42e2be5804);
                 }
             }
             if (is_numeric($v2063c1608d6e0baf80249c42e2be5804) && substr($v2063c1608d6e0baf80249c42e2be5804, 0, 1) !== "0") {
                 $v2063c1608d6e0baf80249c42e2be5804 = (double) $v2063c1608d6e0baf80249c42e2be5804;
             }
             if ($v06e3d36fa30cea095545139854ad1fb9->getDataType() == 'relation' && is_string($v2063c1608d6e0baf80249c42e2be5804)) {
                 if ($v52eb29c6d8ea0d3a5bb3654f49bbd7c7 = $v06e3d36fa30cea095545139854ad1fb9->getGuideId()) {
                     $v8be74552df93e31bbdd6b36ed74bdb6a = new selector('objects');
                     $v8be74552df93e31bbdd6b36ed74bdb6a->types('object-type')->id($v52eb29c6d8ea0d3a5bb3654f49bbd7c7);
                     $v8be74552df93e31bbdd6b36ed74bdb6a->where('*')->ilike($v2063c1608d6e0baf80249c42e2be5804);
                     $v2fa47f7c65fec19cc163b195725e3844 = sizeof($v8be74552df93e31bbdd6b36ed74bdb6a->result);
                     if ($v2fa47f7c65fec19cc163b195725e3844 > 0 && $v2fa47f7c65fec19cc163b195725e3844 < 100) {
                         $v2063c1608d6e0baf80249c42e2be5804 = $v8be74552df93e31bbdd6b36ed74bdb6a->result;
                     }
                 }
             }
             if ($v06e3d36fa30cea095545139854ad1fb9->getDataType() == 'date' && is_string($v2063c1608d6e0baf80249c42e2be5804)) {
                 $v5fc732311905cb27e82d67f4f6511f7f = new umiDate();
                 $v5fc732311905cb27e82d67f4f6511f7f->setDateByString(trim($v2063c1608d6e0baf80249c42e2be5804, ' %'));
                 $v2063c1608d6e0baf80249c42e2be5804 = $v5fc732311905cb27e82d67f4f6511f7f->getDateTimeStamp();
             }
         }
         $this->value = $v2063c1608d6e0baf80249c42e2be5804;
         $this->mode = $vea9f6aca279138c58f705c8d4cb4b8ce;
     } else {
         throw new selectorException("This property doesn't support \"{$vea9f6aca279138c58f705c8d4cb4b8ce}\" method");
     }
 }
 protected function createGrid($v9a09b4dfda82e3e665e31092d1c3ec8d)
 {
     $v63a9f0ea7bb98050796b649e85481845 = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement("umidump");
     $v63a9f0ea7bb98050796b649e85481845->setAttribute('xmlns:xlink', 'http://www.w3.org/TR/xlink');
     $v0cc175b9c0f1b6a831c399e269772661 = $v9a09b4dfda82e3e665e31092d1c3ec8d->createAttribute("version");
     $v0cc175b9c0f1b6a831c399e269772661->appendChild($v9a09b4dfda82e3e665e31092d1c3ec8d->createTextNode(self::VERSION));
     $v63a9f0ea7bb98050796b649e85481845->appendChild($v0cc175b9c0f1b6a831c399e269772661);
     $v9a09b4dfda82e3e665e31092d1c3ec8d->appendChild($v63a9f0ea7bb98050796b649e85481845);
     $v6f8f57715090da2632453988d9a1501b = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement("meta");
     $v8b1dc169bf460ee884fceef66c6607d6 = cmsController::getInstance();
     $vb1444fb0c07653567ad325aa25d4e37a = regedit::getInstance();
     $vad5f82e879a9c5d6b5b442eb37e50551 = $v8b1dc169bf460ee884fceef66c6607d6->getCurrentDomain();
     $v7572559ca86e781ba8fe8073a0b725c6 = $v8b1dc169bf460ee884fceef66c6607d6->getCurrentLang();
     $v7b8b965ad4bca0e41ab51de7b31363a1 = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement('site-name');
     $v7b8b965ad4bca0e41ab51de7b31363a1->appendChild($v9a09b4dfda82e3e665e31092d1c3ec8d->createCDATASection(def_module::parseTPLMacroses(macros_sitename())));
     $v6f8f57715090da2632453988d9a1501b->appendChild($v7b8b965ad4bca0e41ab51de7b31363a1);
     $v7b8b965ad4bca0e41ab51de7b31363a1 = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement('domain');
     $v7b8b965ad4bca0e41ab51de7b31363a1->appendChild($v9a09b4dfda82e3e665e31092d1c3ec8d->createCDATASection($vad5f82e879a9c5d6b5b442eb37e50551->getHost()));
     $v6f8f57715090da2632453988d9a1501b->appendChild($v7b8b965ad4bca0e41ab51de7b31363a1);
     $v7b8b965ad4bca0e41ab51de7b31363a1 = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement('lang');
     $v7b8b965ad4bca0e41ab51de7b31363a1->appendChild($v9a09b4dfda82e3e665e31092d1c3ec8d->createCDATASection($v7572559ca86e781ba8fe8073a0b725c6->getPrefix()));
     $v6f8f57715090da2632453988d9a1501b->appendChild($v7b8b965ad4bca0e41ab51de7b31363a1);
     $v7b8b965ad4bca0e41ab51de7b31363a1 = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement('source-name');
     $v3a6d0284e743dc4a9b86f97d6dd1a3bf = strlen($this->sourceName) ? $this->sourceName : md5($vad5f82e879a9c5d6b5b442eb37e50551->getId() . $v7572559ca86e781ba8fe8073a0b725c6->getId());
     $v7b8b965ad4bca0e41ab51de7b31363a1->appendChild($v9a09b4dfda82e3e665e31092d1c3ec8d->createCDATASection($v3a6d0284e743dc4a9b86f97d6dd1a3bf));
     $v6f8f57715090da2632453988d9a1501b->appendChild($v7b8b965ad4bca0e41ab51de7b31363a1);
     $v7b8b965ad4bca0e41ab51de7b31363a1 = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement('generate-time');
     $v5fc732311905cb27e82d67f4f6511f7f = new umiDate(time());
     $ve358efa489f58062f10dd7316b65649e = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement('timestamp');
     $ve358efa489f58062f10dd7316b65649e->appendChild($v9a09b4dfda82e3e665e31092d1c3ec8d->createTextNode($v5fc732311905cb27e82d67f4f6511f7f->getFormattedDate("U")));
     $v7b8b965ad4bca0e41ab51de7b31363a1->appendChild($ve358efa489f58062f10dd7316b65649e);
     $ve358efa489f58062f10dd7316b65649e = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement('rfc');
     $ve358efa489f58062f10dd7316b65649e->appendChild($v9a09b4dfda82e3e665e31092d1c3ec8d->createTextNode($v5fc732311905cb27e82d67f4f6511f7f->getFormattedDate("r")));
     $v7b8b965ad4bca0e41ab51de7b31363a1->appendChild($ve358efa489f58062f10dd7316b65649e);
     $ve358efa489f58062f10dd7316b65649e = $v9a09b4dfda82e3e665e31092d1c3ec8d->createElement('utc');
     $ve358efa489f58062f10dd7316b65649e->appendChild($v9a09b4dfda82e3e665e31092d1c3ec8d->createTextNode($v5fc732311905cb27e82d67f4f6511f7f->getFormattedDate(DATE_ATOM)));
     $v7b8b965ad4bca0e41ab51de7b31363a1->appendChild($ve358efa489f58062f10dd7316b65649e);
     $v6f8f57715090da2632453988d9a1501b->appendChild($v7b8b965ad4bca0e41ab51de7b31363a1);
     $v63a9f0ea7bb98050796b649e85481845->appendChild($v6f8f57715090da2632453988d9a1501b);
     return $v63a9f0ea7bb98050796b649e85481845;
 }
Example #5
0
 public function save_editable_region()
 {
     // fix for 2.7.4 eip
     if (cmsController::getInstance()->getCurrentMode() != 'admin') {
         return self::old_eip_save_editable_region();
     }
     $iEntityId = getRequest('param0');
     $sPropName = getRequest('param1');
     $content = getRequest('data');
     $bIsObject = (bool) getRequest('is_object');
     if (is_array($content) && count($content) == 1) {
         $content = $content[0];
     } else {
         if (is_array($content) && isset($content[0])) {
             $temp = array();
             foreach ($content as $item) {
                 $temp[] = is_array($item) ? $item[0] : $item;
             }
             $content = $temp;
         }
     }
     $oEntity = $bIsObject ? umiObjectsCollection::getInstance()->getObject($iEntityId) : umiHierarchy::getInstance()->getElement($iEntityId);
     // Checking rights
     $bDisallowed = false;
     $permissions = permissionsCollection::getInstance();
     $userId = $permissions->getUserId();
     if (!$permissions->isSv($userId)) {
         if ($bIsObject) {
             $bDisallowed = !($oEntity->getOwnerId() == $userId);
             if ($bDisallowed) {
                 //Check module permissions
                 $object = selector::get('object')->id($iEntityId);
                 $module = $object->getModule();
                 $method = $object->getMethod();
                 if ($module && $method) {
                     $bDisallowed = !$permissions->isAllowedMethod($userId, $module, $method);
                 }
             }
         } else {
             list($r, $w) = $permissions->isAllowedObject($userId, $iEntityId);
             if (!$w) {
                 $bDisallowed = true;
             }
         }
     }
     if ($bDisallowed) {
         throw new publicAdminException(getLabel('error-no-permissions'));
     }
     $event = new umiEventPoint("systemModifyPropertyValue");
     $event->addRef("entity", $oEntity);
     $event->setParam("property", $sPropName);
     $event->addRef("newValue", $content);
     $event->setMode("before");
     try {
         $event->call();
     } catch (wrongValueException $e) {
         throw new publicAdminException($e->getMessage());
     }
     if ($oEntity instanceof iUmiHierarchyElement) {
         $backupModel = backupModel::getInstance();
         $backupModel->addLogMessage($oEntity->getId());
     }
     if ($bIsObject && !$this->checkAllowedColumn($oEntity, $sPropName)) {
         throw new publicAdminException(getLabel('error-no-permissions'));
     }
     if ($bIsObject && $sPropName == 'is_activated') {
         $guestId = $permissions->getGuestId();
         if ($iEntityId == SV_USER_ID) {
             throw new publicAdminException(getLabel('error-users-swtich-activity-sv'));
         }
         if ($iEntityId == $guestId) {
             throw new publicAdminException(getLabel('error-users-swtich-activity-guest'));
         }
         if ($iEntityId == $userId) {
             throw new publicAdminException(getLabel('error-users-swtich-activity-self'));
         }
     }
     $sPropValue = "";
     if ($oEntity) {
         $bOldVal = umiObjectProperty::$IGNORE_FILTER_INPUT_STRING;
         umiObjectProperty::$IGNORE_FILTER_INPUT_STRING = true;
         $oObject = !$bIsObject ? $oEntity->getObject() : $oEntity;
         $oldValue = null;
         try {
             if ($sPropName == 'name') {
                 if (is_string($content) && strlen($content)) {
                     $oldValue = $oEntity->name;
                     $oEntity->name = $content;
                     if ($oEntity instanceof iUmiHierarchyElement) {
                         $oEntity->h1 = $content;
                     }
                 }
                 $result = array('name' => $content);
             } else {
                 $property = $oObject->getPropByName($sPropName);
                 if ($property->getDataType() == 'date') {
                     $date = new umiDate();
                     $date->setDateByString($content);
                     $content = $date;
                 }
                 $oldValue = $oEntity->getValue($sPropName);
                 $oEntity->setValue($sPropName, $content);
                 if ($oEntity instanceof iUmiHierarchyElement && $sPropName == 'h1') {
                     $oEntity->name = $content;
                 }
                 $result = array('property' => $property);
                 translatorWrapper::get($property);
                 umiObjectPropertyWrapper::$showEmptyFields = true;
             }
         } catch (fieldRestrictionException $e) {
             throw new publicAdminException($e->getMessage());
         }
         $oEntity->commit();
         umiObjectProperty::$IGNORE_FILTER_INPUT_STRING = $bOldVal;
         $oObject->update();
         $oEntity->update();
         if ($oEntity instanceof umiEntinty) {
             $oEntity->commit();
         }
         $event->setParam("oldValue", $oldValue);
         $event->setParam("newValue", $content);
         $event->setMode("after");
         $event->call();
         $this->setData($result);
         return $this->doData();
     }
 }
 protected function createDateSection($vd7e6d55ba379a13d08c25d15faf2a23b, DOMElement $v5f0b6ebc4bea10285ba2b8a6ce78b863)
 {
     $v8277e0910d750195b448797616e091ad = $this->doc;
     $v5fc732311905cb27e82d67f4f6511f7f = new umiDate($vd7e6d55ba379a13d08c25d15faf2a23b);
     $v7b8b965ad4bca0e41ab51de7b31363a1 = $v8277e0910d750195b448797616e091ad->createElement('timestamp');
     $v7b8b965ad4bca0e41ab51de7b31363a1->appendChild($v8277e0910d750195b448797616e091ad->createTextNode($v5fc732311905cb27e82d67f4f6511f7f->getFormattedDate("U")));
     $v5f0b6ebc4bea10285ba2b8a6ce78b863->appendChild($v7b8b965ad4bca0e41ab51de7b31363a1);
     $v7b8b965ad4bca0e41ab51de7b31363a1 = $v8277e0910d750195b448797616e091ad->createElement('rfc');
     $v7b8b965ad4bca0e41ab51de7b31363a1->appendChild($v8277e0910d750195b448797616e091ad->createTextNode($v5fc732311905cb27e82d67f4f6511f7f->getFormattedDate("r")));
     $v5f0b6ebc4bea10285ba2b8a6ce78b863->appendChild($v7b8b965ad4bca0e41ab51de7b31363a1);
     $v7b8b965ad4bca0e41ab51de7b31363a1 = $v8277e0910d750195b448797616e091ad->createElement('utc');
     $v7b8b965ad4bca0e41ab51de7b31363a1->appendChild($v8277e0910d750195b448797616e091ad->createTextNode($v5fc732311905cb27e82d67f4f6511f7f->getFormattedDate(DATE_ATOM)));
     $v5f0b6ebc4bea10285ba2b8a6ce78b863->appendChild($v7b8b965ad4bca0e41ab51de7b31363a1);
     return $v5f0b6ebc4bea10285ba2b8a6ce78b863;
 }
 protected function prepareValue(umiField $v06e3d36fa30cea095545139854ad1fb9, $v5b57ab60c984eec4bc98143f6d1e8775)
 {
     $v833750ac635fcc57dc33ecafe365f9a7 = $v06e3d36fa30cea095545139854ad1fb9->getFieldType();
     switch ($v833750ac635fcc57dc33ecafe365f9a7->getDataType()) {
         case 'relation':
             $result = preg_split('/, ?/', $v5b57ab60c984eec4bc98143f6d1e8775);
             foreach ($result as $v865c0c0b4ab0e063e5caa3387c1a8741 => $v3a6d0284e743dc4a9b86f97d6dd1a3bf) {
                 if ($v3a6d0284e743dc4a9b86f97d6dd1a3bf) {
                     $i18n = ulangStream::getI18n($v3a6d0284e743dc4a9b86f97d6dd1a3bf);
                     $result[$v865c0c0b4ab0e063e5caa3387c1a8741] = $i18n ? $i18n : $v3a6d0284e743dc4a9b86f97d6dd1a3bf;
                 }
             }
             return $result;
         case 'tags':
             return preg_split('/, ?/', $v5b57ab60c984eec4bc98143f6d1e8775);
         case 'int':
             return (int) $v5b57ab60c984eec4bc98143f6d1e8775;
         case 'float':
         case 'price':
             $v5b57ab60c984eec4bc98143f6d1e8775 = str_replace(",", ".", $v5b57ab60c984eec4bc98143f6d1e8775);
             return (double) $v5b57ab60c984eec4bc98143f6d1e8775;
             break;
         case 'date':
             if ($v5b57ab60c984eec4bc98143f6d1e8775) {
                 return umiDate::getTimeStamp($v5b57ab60c984eec4bc98143f6d1e8775);
             } else {
                 return false;
             }
         case 'file':
         case 'img_file':
             if (preg_match('/[а-яА-Я ]/', $v5b57ab60c984eec4bc98143f6d1e8775)) {
                 $vc94af6eb0fecb9a2c23fb0c0cc496a8a = iconv('UTF-8', 'CP1251//IGNORE', $v5b57ab60c984eec4bc98143f6d1e8775);
                 $v826e8142e6baabe8af779f5f490cf5f5 = CURRENT_WORKING_DIR . $v5b57ab60c984eec4bc98143f6d1e8775;
                 $v1c1c96fd2cf8330db0bfa936ce82f3b9 = CURRENT_WORKING_DIR . $vc94af6eb0fecb9a2c23fb0c0cc496a8a;
                 $v8c7dd922ad47494fc02c388e12c00eac = false;
                 if (file_exists($v826e8142e6baabe8af779f5f490cf5f5)) {
                     $v8c7dd922ad47494fc02c388e12c00eac = $v5b57ab60c984eec4bc98143f6d1e8775;
                 } elseif (file_exists($v1c1c96fd2cf8330db0bfa936ce82f3b9)) {
                     $v8c7dd922ad47494fc02c388e12c00eac = $vc94af6eb0fecb9a2c23fb0c0cc496a8a;
                 }
                 if ($v8c7dd922ad47494fc02c388e12c00eac) {
                     $v5b57ab60c984eec4bc98143f6d1e8775 = str_replace('\\', '/', $v5b57ab60c984eec4bc98143f6d1e8775);
                     $v13872c0118a4316afd1e99295017d654 = explode('/', $v5b57ab60c984eec4bc98143f6d1e8775);
                     $vf9c644ef64dd78d73149e1ab33366203 = array();
                     if (count($v13872c0118a4316afd1e99295017d654) > 1) {
                         $v5b063e275d506f65ebf1b02d926f19a4 = $v13872c0118a4316afd1e99295017d654[count($v13872c0118a4316afd1e99295017d654) - 1];
                         unset($v13872c0118a4316afd1e99295017d654[count($v13872c0118a4316afd1e99295017d654) - 1]);
                         foreach ($v13872c0118a4316afd1e99295017d654 as $vf4c9385f1902f7334b00b9b4ecd164de) {
                             if (preg_match('/[а-яА-Я]/', $vf4c9385f1902f7334b00b9b4ecd164de)) {
                                 $vf9c644ef64dd78d73149e1ab33366203[] = translit::convert($vf4c9385f1902f7334b00b9b4ecd164de);
                             } else {
                                 $vf9c644ef64dd78d73149e1ab33366203[] = $vf4c9385f1902f7334b00b9b4ecd164de;
                             }
                         }
                     } else {
                         $v5b063e275d506f65ebf1b02d926f19a4 = $v13872c0118a4316afd1e99295017d654[0];
                     }
                     $vcdb08918f90fcb2287e075a5336a46e4 = explode('.', $v5b063e275d506f65ebf1b02d926f19a4);
                     $vabf77184f55403d75b9d51d79162a7ca = $vcdb08918f90fcb2287e075a5336a46e4[count($vcdb08918f90fcb2287e075a5336a46e4) - 1];
                     unset($vcdb08918f90fcb2287e075a5336a46e4[count($vcdb08918f90fcb2287e075a5336a46e4) - 1]);
                     $vfa1954f632650a82482e1e712a853db0 = implode('.', $vcdb08918f90fcb2287e075a5336a46e4);
                     if (preg_match('/[а-яА-Я]/', $vfa1954f632650a82482e1e712a853db0)) {
                         $vfa1954f632650a82482e1e712a853db0 = translit::convert($vfa1954f632650a82482e1e712a853db0);
                     }
                     $vfa1954f632650a82482e1e712a853db0 .= '.' . $vabf77184f55403d75b9d51d79162a7ca;
                     $vf9c644ef64dd78d73149e1ab33366203[] = $vfa1954f632650a82482e1e712a853db0;
                     $v5b57ab60c984eec4bc98143f6d1e8775 = implode('/', $vf9c644ef64dd78d73149e1ab33366203);
                     if (!(file_exists(dirname(CURRENT_WORKING_DIR . $v5b57ab60c984eec4bc98143f6d1e8775)) && is_dir(dirname(CURRENT_WORKING_DIR . $v5b57ab60c984eec4bc98143f6d1e8775)))) {
                         mkdir(dirname(CURRENT_WORKING_DIR . $v5b57ab60c984eec4bc98143f6d1e8775), 0777, true);
                     }
                     rename(CURRENT_WORKING_DIR . $v8c7dd922ad47494fc02c388e12c00eac, CURRENT_WORKING_DIR . $v5b57ab60c984eec4bc98143f6d1e8775);
                 }
             }
             if ($v5b57ab60c984eec4bc98143f6d1e8775 && substr($v5b57ab60c984eec4bc98143f6d1e8775, 0, 1) == '/') {
                 $v5b57ab60c984eec4bc98143f6d1e8775 = '.' . $v5b57ab60c984eec4bc98143f6d1e8775;
             }
             return $v5b57ab60c984eec4bc98143f6d1e8775;
         case 'swf_file':
             if ($v5b57ab60c984eec4bc98143f6d1e8775 && substr($v5b57ab60c984eec4bc98143f6d1e8775, 0, 1) == '/') {
                 $v5b57ab60c984eec4bc98143f6d1e8775 = '.' . $v5b57ab60c984eec4bc98143f6d1e8775;
             }
             return $v5b57ab60c984eec4bc98143f6d1e8775;
         default:
             return $v5b57ab60c984eec4bc98143f6d1e8775;
     }
 }
Example #8
0
 public function applyFilterDate(umiSelection $sel, umiField $field, $value)
 {
     if (empty($value)) {
         return false;
     }
     $valueArray = (array) $value;
     foreach ($valueArray as $i => $val) {
         $valueArray[$i] = umiDate::getTimeStamp($val);
     }
     if ($this->applyKeyedFilters($sel, $field, $valueArray)) {
         return;
     }
     if (!empty($valueArray[1])) {
         $sel->addPropertyFilterBetween($field->getId(), $valueArray[0], $valueArray[1]);
     } else {
         if (!empty($valueArray[0])) {
             $sel->addPropertyFilterMore($field->getId(), $valueArray[0]);
         }
     }
 }
 protected function importPropValue(umiEntinty $vf5e638cc78dd325906c1298a0c21fb6b, DOMElement $vcaf9b6b99962bf5c2264824231d7a40c, $vd08e820fd4eb48eede47aa5985d10cc8 = false)
 {
     $v3a229433643cf8ea25f2a9b198ea70d8 = $vcaf9b6b99962bf5c2264824231d7a40c->getAttribute('name');
     $vb068931cc450442b63f5b3d276ea4297 = self::translateName($v3a229433643cf8ea25f2a9b198ea70d8);
     $v1a13105b7e4eb5fb2e7c9515ac06aa48 = $this->parser->evaluate("value", $vcaf9b6b99962bf5c2264824231d7a40c);
     if (!$v1a13105b7e4eb5fb2e7c9515ac06aa48->length && $vd08e820fd4eb48eede47aa5985d10cc8) {
         $v1a13105b7e4eb5fb2e7c9515ac06aa48 = $this->parser->evaluate("default-value", $vcaf9b6b99962bf5c2264824231d7a40c);
     }
     if (!$v1a13105b7e4eb5fb2e7c9515ac06aa48->length) {
         if ($vd08e820fd4eb48eede47aa5985d10cc8) {
             $this->reportError($this->getLabel('label-property') . " \"{$vb068931cc450442b63f5b3d276ea4297}\" " . $this->getLabel('label-has-no-values'));
         }
         return false;
     }
     $v67236e502346412a98a0bb965b7a59e6 = $v1a13105b7e4eb5fb2e7c9515ac06aa48->item(0);
     $v94757cae63fd3e398c0811a976dd6bbe = $vf5e638cc78dd325906c1298a0c21fb6b instanceof umiHierarchyElement ? $vf5e638cc78dd325906c1298a0c21fb6b->getObjectTypeId() : $vf5e638cc78dd325906c1298a0c21fb6b->getTypeId();
     $v599dcce2998a6b40b1e38e8c6006cb0a = umiObjectTypesCollection::getInstance()->getType($v94757cae63fd3e398c0811a976dd6bbe);
     $v3aabf39f2d943fa886d86dcbbee4d910 = $v599dcce2998a6b40b1e38e8c6006cb0a->getFieldId($vb068931cc450442b63f5b3d276ea4297, false);
     $v06e3d36fa30cea095545139854ad1fb9 = umiFieldsCollection::getInstance()->getField($v3aabf39f2d943fa886d86dcbbee4d910);
     if (!$v06e3d36fa30cea095545139854ad1fb9 instanceof umiField && $vcaf9b6b99962bf5c2264824231d7a40c->getAttribute('allow-runtime-add') == '1') {
         $v562feb4548b66febf02774b4f339552e = $vcaf9b6b99962bf5c2264824231d7a40c->parentNode;
         $vdb0f6f37ebeb6ea09489124345af2a45 = $this->importTypeGroup($v599dcce2998a6b40b1e38e8c6006cb0a, $v562feb4548b66febf02774b4f339552e, false);
         if (!$vdb0f6f37ebeb6ea09489124345af2a45 instanceof umiFieldsGroup) {
             return false;
         }
         $v06e3d36fa30cea095545139854ad1fb9 = $this->importField($vdb0f6f37ebeb6ea09489124345af2a45, $vcaf9b6b99962bf5c2264824231d7a40c);
         $vf5e638cc78dd325906c1298a0c21fb6b instanceof umiHierarchyElement ? $vf5e638cc78dd325906c1298a0c21fb6b->getObject()->update() : $vf5e638cc78dd325906c1298a0c21fb6b->update();
     }
     if (!$v06e3d36fa30cea095545139854ad1fb9 instanceof umiField) {
         return false;
     }
     switch ($v06e3d36fa30cea095545139854ad1fb9->getDataType()) {
         case "optioned":
         case "symlink":
             return false;
         case "date":
             $vd7e6d55ba379a13d08c25d15faf2a23b = intval($v67236e502346412a98a0bb965b7a59e6->getAttribute('unix-timestamp'));
             $v8059f160e1aa1f9d3921049ce93b00e1 = new umiDate();
             if ($vd7e6d55ba379a13d08c25d15faf2a23b) {
                 $v8059f160e1aa1f9d3921049ce93b00e1->setDateByTimeStamp($vd7e6d55ba379a13d08c25d15faf2a23b);
             } else {
                 $v8059f160e1aa1f9d3921049ce93b00e1->setDateByString($v67236e502346412a98a0bb965b7a59e6->nodeValue);
             }
             $vf5e638cc78dd325906c1298a0c21fb6b->setValue($vb068931cc450442b63f5b3d276ea4297, $v8059f160e1aa1f9d3921049ce93b00e1);
             break;
         case "price":
             $vfcaea7edd270964cc145ea48e4367d43 = cmsController::getInstance()->getModule('emarket');
             $v78a5eb43deef9a7b5b9ce157b9d52ac4 = $v67236e502346412a98a0bb965b7a59e6->nodeValue;
             $v78a5eb43deef9a7b5b9ce157b9d52ac4 = str_replace(',', '.', $v78a5eb43deef9a7b5b9ce157b9d52ac4);
             $v78a5eb43deef9a7b5b9ce157b9d52ac4 = floatval(preg_replace("/[^0-9.,]/", "", $v78a5eb43deef9a7b5b9ce157b9d52ac4));
             $v52e3817fff5250b5391ef85b1ce23bdb = $v67236e502346412a98a0bb965b7a59e6->hasAttribute('currency-code') ? $v67236e502346412a98a0bb965b7a59e6->getAttribute('currency-code') : $v67236e502346412a98a0bb965b7a59e6->getAttribute('currency_code');
             if (strlen($v52e3817fff5250b5391ef85b1ce23bdb) && $vfcaea7edd270964cc145ea48e4367d43) {
                 $v1af0389838508d7016a9841eb6273962 = $vfcaea7edd270964cc145ea48e4367d43->getCurrency($v52e3817fff5250b5391ef85b1ce23bdb);
                 if ($v1af0389838508d7016a9841eb6273962) {
                     $result = $vfcaea7edd270964cc145ea48e4367d43->formatCurrencyPrice(array($v78a5eb43deef9a7b5b9ce157b9d52ac4), $vfcaea7edd270964cc145ea48e4367d43->getDefaultCurrency(), $v1af0389838508d7016a9841eb6273962);
                     $v78a5eb43deef9a7b5b9ce157b9d52ac4 = $result[0];
                 }
             }
             $vf5e638cc78dd325906c1298a0c21fb6b->setValue($vb068931cc450442b63f5b3d276ea4297, $v78a5eb43deef9a7b5b9ce157b9d52ac4);
             break;
         case "file":
         case "img_file":
         case "video_file":
         case "swf_file":
             if ($this->renameFiles) {
                 $v9d22547e12eafcfadf56ff88b9d67f4d = false;
                 $vf83cd85f6404a7018af0fcf071f35751 = $vf5e638cc78dd325906c1298a0c21fb6b->getValue($vb068931cc450442b63f5b3d276ea4297);
                 if ($vf83cd85f6404a7018af0fcf071f35751 instanceof umiFile) {
                     $v9d22547e12eafcfadf56ff88b9d67f4d = $vf83cd85f6404a7018af0fcf071f35751->getFilePath();
                 }
                 $vbf0e61d0f411b035bf846149824fe352 = ltrim(trim($v67236e502346412a98a0bb965b7a59e6->nodeValue, "\r\n"), ".");
                 $v435ed7e9f07f740abf511a62c00eef6e = basename($vbf0e61d0f411b035bf846149824fe352);
                 $v736007832d2167baaae763fd3a3f3cf1 = dirname($vbf0e61d0f411b035bf846149824fe352);
                 $vabf77184f55403d75b9d51d79162a7ca = explode(".", $v435ed7e9f07f740abf511a62c00eef6e);
                 $vabf77184f55403d75b9d51d79162a7ca = end($vabf77184f55403d75b9d51d79162a7ca);
                 $vd70819bac4952f91adc9954c5b055aca = translit::convert(trim($vf5e638cc78dd325906c1298a0c21fb6b->getName(), "\r\n"));
                 $v435ed7e9f07f740abf511a62c00eef6e = $vd70819bac4952f91adc9954c5b055aca;
                 $ve2942a04780e223b215eb8b663cf5353 = 0;
                 $v149603e6c03516362a8da23f624db945 = error_reporting(0);
                 while (true) {
                     if (!file_exists(CURRENT_WORKING_DIR . '/' . $vbf0e61d0f411b035bf846149824fe352)) {
                         break 2;
                     } else {
                         if ($v9d22547e12eafcfadf56ff88b9d67f4d) {
                             $v46cd4eff50a3aca89f0fbc7ea6a79453 = CURRENT_WORKING_DIR . ltrim($v9d22547e12eafcfadf56ff88b9d67f4d, ".");
                             if (file_exists($v46cd4eff50a3aca89f0fbc7ea6a79453)) {
                                 unlink($v46cd4eff50a3aca89f0fbc7ea6a79453);
                             }
                         }
                     }
                     if (!file_exists(CURRENT_WORKING_DIR . '/' . $v736007832d2167baaae763fd3a3f3cf1 . '/' . $v435ed7e9f07f740abf511a62c00eef6e . '.' . $vabf77184f55403d75b9d51d79162a7ca)) {
                         break;
                     }
                     $ve2942a04780e223b215eb8b663cf5353++;
                     $v435ed7e9f07f740abf511a62c00eef6e = $vd70819bac4952f91adc9954c5b055aca . '_' . $ve2942a04780e223b215eb8b663cf5353;
                 }
                 $v435ed7e9f07f740abf511a62c00eef6e .= '.' . $vabf77184f55403d75b9d51d79162a7ca;
                 rename(CURRENT_WORKING_DIR . '/' . $vbf0e61d0f411b035bf846149824fe352, CURRENT_WORKING_DIR . '/' . $v736007832d2167baaae763fd3a3f3cf1 . '/' . $v435ed7e9f07f740abf511a62c00eef6e);
                 error_reporting($v149603e6c03516362a8da23f624db945);
                 $vbf0e61d0f411b035bf846149824fe352 = '.' . $v736007832d2167baaae763fd3a3f3cf1 . '/' . $v435ed7e9f07f740abf511a62c00eef6e;
                 $vf5e638cc78dd325906c1298a0c21fb6b->setValue($vb068931cc450442b63f5b3d276ea4297, $vbf0e61d0f411b035bf846149824fe352);
             } else {
                 $v47826cacc65c665212b821e6ff80b9b0 = ltrim(trim($v67236e502346412a98a0bb965b7a59e6->nodeValue, "\r\n"), ".");
                 $vf5e638cc78dd325906c1298a0c21fb6b->setValue($vb068931cc450442b63f5b3d276ea4297, "." . $v47826cacc65c665212b821e6ff80b9b0);
             }
             break;
         case "relation":
             if ($this->auto_guide_creation) {
                 if ($vb068931cc450442b63f5b3d276ea4297 == 'payment_status_id' && $v599dcce2998a6b40b1e38e8c6006cb0a->getMethod() == 'order') {
                     $vfcaea7edd270964cc145ea48e4367d43 = cmsController::getInstance()->getModule('emarket');
                     if ($vfcaea7edd270964cc145ea48e4367d43) {
                         umiObjectProperty::$USE_FORCE_OBJECTS_CREATION = false;
                         $v903931b3a9d25a70683f51ab9d363d2e = $v67236e502346412a98a0bb965b7a59e6->nodeValue;
                         $v70a17ffa722a3985b86d30b034ad06d7 = order::get($vf5e638cc78dd325906c1298a0c21fb6b->id);
                         $v70a17ffa722a3985b86d30b034ad06d7->setPaymentStatus($v903931b3a9d25a70683f51ab9d363d2e);
                         $v70a17ffa722a3985b86d30b034ad06d7->commit();
                         umiObjectProperty::$USE_FORCE_OBJECTS_CREATION = true;
                     }
                 } elseif ($vb068931cc450442b63f5b3d276ea4297 == 'status_id' && $v599dcce2998a6b40b1e38e8c6006cb0a->getMethod() == 'order') {
                     $vfcaea7edd270964cc145ea48e4367d43 = cmsController::getInstance()->getModule('emarket');
                     if ($vfcaea7edd270964cc145ea48e4367d43) {
                         $v903931b3a9d25a70683f51ab9d363d2e = $v67236e502346412a98a0bb965b7a59e6->nodeValue;
                         $v70a17ffa722a3985b86d30b034ad06d7 = order::get($vf5e638cc78dd325906c1298a0c21fb6b->id);
                         $vc8db1069270b4aad8a8d03a1d939bc26 = $v70a17ffa722a3985b86d30b034ad06d7->getOrderStatus();
                         $vf48da84a2621e8cad36af3c0af958502 = $v70a17ffa722a3985b86d30b034ad06d7->getCodeByStatus($vc8db1069270b4aad8a8d03a1d939bc26);
                         if (!in_array($vf48da84a2621e8cad36af3c0af958502, array('ready', 'canceled', 'rejected'))) {
                             umiObjectProperty::$USE_FORCE_OBJECTS_CREATION = false;
                             $v70a17ffa722a3985b86d30b034ad06d7->setOrderStatus($v903931b3a9d25a70683f51ab9d363d2e);
                             $v70a17ffa722a3985b86d30b034ad06d7->commit();
                             umiObjectProperty::$USE_FORCE_OBJECTS_CREATION = true;
                         }
                     }
                 } else {
                     $v691d502cfd0e0626cd3b058e5682ad1c = array();
                     $v1a13105b7e4eb5fb2e7c9515ac06aa48 = $v67236e502346412a98a0bb965b7a59e6->getElementsByTagName("item");
                     foreach ($v1a13105b7e4eb5fb2e7c9515ac06aa48 as $ve795119eccc6565f098fca8454bad366) {
                         $v691d502cfd0e0626cd3b058e5682ad1c[] = $ve795119eccc6565f098fca8454bad366->getAttribute('name');
                     }
                     $vf5e638cc78dd325906c1298a0c21fb6b->setValue($vb068931cc450442b63f5b3d276ea4297, $v691d502cfd0e0626cd3b058e5682ad1c);
                 }
             }
             break;
         case "tags":
             $v1a13105b7e4eb5fb2e7c9515ac06aa48 = $this->parser->evaluate("combined", $vcaf9b6b99962bf5c2264824231d7a40c);
             if ($v67236e502346412a98a0bb965b7a59e6 = $v1a13105b7e4eb5fb2e7c9515ac06aa48->item(0)) {
                 $vf5e638cc78dd325906c1298a0c21fb6b->setValue($vb068931cc450442b63f5b3d276ea4297, trim($v67236e502346412a98a0bb965b7a59e6->nodeValue, "\r\n"));
             }
             break;
         case "string":
         case "text":
         case "wysiwyg":
         case "boolean":
         case "counter":
         case "float":
         case "int":
             if ($vb068931cc450442b63f5b3d276ea4297 == 'payment_type_id' || $vb068931cc450442b63f5b3d276ea4297 == 'modificator_type_id' || $vb068931cc450442b63f5b3d276ea4297 == 'rule_type_id' || $vb068931cc450442b63f5b3d276ea4297 == 'delivery_type_id') {
                 $v7f7cfde5ec586119b48911a2c75851e5 = $this->relations->getNewTypeIdRelation($this->source_id, $v67236e502346412a98a0bb965b7a59e6->nodeValue);
                 if ($v7f7cfde5ec586119b48911a2c75851e5) {
                     $vf5e638cc78dd325906c1298a0c21fb6b->setValue($vb068931cc450442b63f5b3d276ea4297, $v7f7cfde5ec586119b48911a2c75851e5);
                 }
                 break;
             }
         default:
             $vf5e638cc78dd325906c1298a0c21fb6b->setValue($vb068931cc450442b63f5b3d276ea4297, trim($v67236e502346412a98a0bb965b7a59e6->nodeValue, "\r\n"));
             break;
     }
 }
		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/");
			}
		}
    protected function parseElements()
    {
        $v0565942fb39be0978d5774cfa5320fcb = $this->elements;
        $v6a7f245843454cf4f28ad7c5e2572aa2 = "";
        $va5d4db7ed95dbef22bdd6bd8036da60a = umiHierarchy::getInstance()->forceAbsolutePath(true);
        foreach ($v0565942fb39be0978d5774cfa5320fcb as $v7057e8409c7c531a1a6e9ac3df4ed549) {
            $v8e2dcfd7e7e24b1ca76c1193f645902b = umiHierarchy::getInstance()->getElement($v7057e8409c7c531a1a6e9ac3df4ed549);
            if (!$v8e2dcfd7e7e24b1ca76c1193f645902b) {
                continue;
            }
            $vb068931cc450442b63f5b3d276ea4297 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getName();
            $vd84ff935144e00c3e1d395c2379aca47 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getAltName();
            $v2a304a1348456ccd2234cd71a81bd338 = umiHierarchy::getInstance()->getPathById($v7057e8409c7c531a1a6e9ac3df4ed549);
            $v6be379826b20cc58475f636e33f4606b = $v8e2dcfd7e7e24b1ca76c1193f645902b->getParentId();
            $v0715f6d9497f93911417c9c324265771 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getTypeId();
            $vb946c44d711ade3b061653732977d043 = umiHierarchyTypesCollection::getInstance()->getType($v0715f6d9497f93911417c9c324265771);
            $v571927edeba34435dcef63324b2a4f86 = $vb946c44d711ade3b061653732977d043->getTitle();
            $v5cde3b79e1c913665469de8dc2f1f8b6 = $vb946c44d711ade3b061653732977d043->getName();
            $v28843f287b7e7d3ee4ad0be8761e325d = $vb946c44d711ade3b061653732977d043->getExt();
            $vd02e12eb6d6c3f6ebd763197df01e211 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getTplId();
            $vf9bdb7221804d6d17b654ec67c5a0735 = templatesCollection::getInstance()->getTemplate($vd02e12eb6d6c3f6ebd763197df01e211)->getFilename();
            $v78e6dd7a49f5b0cb2106a3a434dd5c86 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getLangId();
            $v7572559ca86e781ba8fe8073a0b725c6 = langsCollection::getInstance()->getLang($v78e6dd7a49f5b0cb2106a3a434dd5c86);
            $vff8b918bc674d6a658430241e4a74574 = $v7572559ca86e781ba8fe8073a0b725c6->getTitle();
            $v753527be46567ad90a4203cf4b40d70e = $v7572559ca86e781ba8fe8073a0b725c6->getPrefix();
            $v662cbf1253ac7d8750ed9190c52163e5 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getDomainId();
            $vad5f82e879a9c5d6b5b442eb37e50551 = domainsCollection::getInstance()->getDomain($v662cbf1253ac7d8750ed9190c52163e5);
            $vf9b9218cbe221f8b9f1292474aa6f3e4 = $vad5f82e879a9c5d6b5b442eb37e50551->getHost();
            $vaf31437ce61345f416579830a98c91e5 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject()->getId();
            $ve1c6c9ef2fcbe75f26f815c4ef2e60b4 = (int) $v8e2dcfd7e7e24b1ca76c1193f645902b->getIsVisible();
            $v4264c638e0098acb172519b0436db099 = (int) $v8e2dcfd7e7e24b1ca76c1193f645902b->getIsActive();
            $v3e04dc2abd929a9d02e2e0fa41d24bf9 = new umiDate($v8e2dcfd7e7e24b1ca76c1193f645902b->getUpdateTime());
            $v2e10faa7211633841eebf971b7056c0b = $v3e04dc2abd929a9d02e2e0fa41d24bf9->getFormattedDate("U");
            $vd4f11866a8f58f1071bd3ae29c935c5a = $v3e04dc2abd929a9d02e2e0fa41d24bf9->getFormattedDate("r");
            $vc10cb84e1a90ce84ef3ee424c2b1a2ef = $v3e04dc2abd929a9d02e2e0fa41d24bf9->getFormattedDate(DATE_ATOM);
            $ve05b19ee2921f914301c26bcc4fc8d5a = umiImportRelations::getInstance()->getNewIdRelation($this->source_id, $v6be379826b20cc58475f636e33f4606b);
            $ve7398137766d8a8621035454620c1317 = umiImportRelations::getInstance()->getNewIdRelation($this->source_id, $v7057e8409c7c531a1a6e9ac3df4ed549);
            if ($v7057e8409c7c531a1a6e9ac3df4ed549 && !$ve7398137766d8a8621035454620c1317) {
                umiImportRelations::getInstance()->setIdRelation($this->source_id, $v7057e8409c7c531a1a6e9ac3df4ed549, $v7057e8409c7c531a1a6e9ac3df4ed549);
                $ve7398137766d8a8621035454620c1317 = $v7057e8409c7c531a1a6e9ac3df4ed549;
            }
            if ($v6be379826b20cc58475f636e33f4606b && !$ve05b19ee2921f914301c26bcc4fc8d5a) {
                umiImportRelations::getInstance()->setIdRelation($this->source_id, $v6be379826b20cc58475f636e33f4606b, $v6be379826b20cc58475f636e33f4606b);
                $ve05b19ee2921f914301c26bcc4fc8d5a = $v6be379826b20cc58475f636e33f4606b;
            }
            $v6a7f245843454cf4f28ad7c5e2572aa2 .= <<<END
\t<element id="{$ve7398137766d8a8621035454620c1317}" parentId="{$ve05b19ee2921f914301c26bcc4fc8d5a}" objectId="{$vaf31437ce61345f416579830a98c91e5}" is_visible="{$ve1c6c9ef2fcbe75f26f815c4ef2e60b4}" is_active="{$v4264c638e0098acb172519b0436db099}">
\t\t<name><![CDATA[{$vb068931cc450442b63f5b3d276ea4297}]]></name>
\t\t<link><![CDATA[{$v2a304a1348456ccd2234cd71a81bd338}]]></link>
\t\t<altName><![CDATA[{$vd84ff935144e00c3e1d395c2379aca47}]]></altName>

\t\t<templateId><![CDATA[{$vd02e12eb6d6c3f6ebd763197df01e211}]]></templateId>
\t\t<templatePath><![CDATA[{$vf9bdb7221804d6d17b654ec67c5a0735}]]></templatePath>
\t\t<lang prefix="{$v753527be46567ad90a4203cf4b40d70e}"><![CDATA[{$vff8b918bc674d6a658430241e4a74574}]]></lang>
\t\t<domain><![CDATA[{$vf9b9218cbe221f8b9f1292474aa6f3e4}]]></domain>

\t\t<behaviour>
\t\t\t<title><![CDATA[{$v571927edeba34435dcef63324b2a4f86}]]></title>
\t\t\t<module><![CDATA[{$v5cde3b79e1c913665469de8dc2f1f8b6}]]></module>
\t\t\t<method><![CDATA[{$v28843f287b7e7d3ee4ad0be8761e325d}]]></method>
\t\t</behaviour>

\t\t<updateTime>
\t\t\t\t<timestamp><![CDATA[{$v2e10faa7211633841eebf971b7056c0b}]]></timestamp>
\t\t\t\t<RFC><![CDATA[{$vd4f11866a8f58f1071bd3ae29c935c5a}]]></RFC>
\t\t\t\t<UTC><![CDATA[{$vc10cb84e1a90ce84ef3ee424c2b1a2ef}]]></UTC>
\t\t</updateTime>
\t</element>


END;
            unset($v8e2dcfd7e7e24b1ca76c1193f645902b);
            umiHierarchy::getInstance()->unloadElement($v7057e8409c7c531a1a6e9ac3df4ed549);
        }
        umiHierarchy::getInstance()->forceAbsolutePath($va5d4db7ed95dbef22bdd6bd8036da60a);
        unset($v0565942fb39be0978d5774cfa5320fcb);
        return $v6a7f245843454cf4f28ad7c5e2572aa2;
    }
 protected function extractValues($v60a3282b31e7a1e46163b55fce49cc71)
 {
     $v9b207167e5381c47682c6b4f58a623fb = array();
     if (!$v60a3282b31e7a1e46163b55fce49cc71->value) {
         return array();
     }
     foreach ($v60a3282b31e7a1e46163b55fce49cc71->value as $v67236e502346412a98a0bb965b7a59e6) {
         $vd7e6d55ba379a13d08c25d15faf2a23b = (string) $v67236e502346412a98a0bb965b7a59e6->timestamp[0];
         $v3a6d0284e743dc4a9b86f97d6dd1a3bf = (string) $v67236e502346412a98a0bb965b7a59e6;
         if ($vd7e6d55ba379a13d08c25d15faf2a23b) {
             $v3a6d0284e743dc4a9b86f97d6dd1a3bf = new umiDate();
             $v3a6d0284e743dc4a9b86f97d6dd1a3bf->setDateByTimeStamp($vd7e6d55ba379a13d08c25d15faf2a23b);
         }
         if ($v3a6d0284e743dc4a9b86f97d6dd1a3bf) {
             $v9b207167e5381c47682c6b4f58a623fb[] = $v3a6d0284e743dc4a9b86f97d6dd1a3bf;
         }
     }
     return $v9b207167e5381c47682c6b4f58a623fb;
 }
 /**
  * TODO PHPDoc
  * Enter description here ...
  * @param unknown_type $object_id
  * @param unknown_type $is_new
  * @param unknown_type $b_force_owner
  * @param unknown_type $all
  */
 public function saveEditedObject($object_id, $is_new = false, $b_force_owner = false, $all = false)
 {
     global $_FILES;
     $cmsController = cmsController::getInstance();
     $permissions = permissionsCollection::getInstance();
     if (!($object = umiObjectsCollection::getInstance()->getObject($object_id))) {
         return false;
     }
     if (!$b_force_owner && !$permissions->isOwnerOfObject($object_id)) {
         return false;
     }
     $object_type_id = $object->getTypeId();
     $object_type = umiObjectTypesCollection::getInstance()->getType($object_type_id);
     $key = $is_new ? "new" : $object_id;
     if (is_null(getRequest('data'))) {
         if (is_null($_FILES)) {
             return true;
         } else {
             $_REQUEST['data'][$key] = array();
         }
     }
     $data = isset($_REQUEST['data'][$key]) ? $_REQUEST['data'][$key] : array();
     foreach ($_REQUEST as $skey => $value) {
         $real_key = substr($skey, 7);
         if (substr($skey, 0, 7) == 'select_' && !isset($data[$real_key])) {
             $data[$real_key] = $value;
         }
     }
     if (isset($_FILES['data']['tmp_name'][$key])) {
         foreach ($_FILES['data']['tmp_name'][$key] as $i => $v) {
             $data[$i] = $v;
         }
     }
     $data = $this->checkRequiredData($object_type, $data, $object_id, $is_new);
     $data = $this->checkAllowedData($object_type, $data);
     foreach ($data as $field_name => $field_value) {
         if (!($field_id = $object_type->getFieldId($field_name))) {
             continue;
         }
         $field = umiFieldsCollection::getInstance()->getField($field_id);
         if (!$field->getIsVisible() && !$all) {
             //continue;
         }
         $field_type = $field->getFieldType();
         $data_type = $field_type->getDataType();
         $fldr_name = $field_name . '/';
         switch ($data_type) {
             case "password":
                 if (isset($field_value[1])) {
                     $field_value = $field_value[0] == $field_value[1] ? md5($field_value[0]) : NULL;
                 } else {
                     if (is_array($field_value)) {
                         $field_value = $field_value[0] ? md5($field_value[0]) : NULL;
                     } else {
                         $field_value = $field_value ? md5($field_value) : NULL;
                     }
                 }
                 break;
             case "date":
                 $oDate = new umiDate();
                 $oDate->setDateByString($field_value);
                 $field_value = $oDate;
                 break;
             case "img_file":
                 switch ($field_name) {
                     case "menu_pic_ua":
                         $destination_folder = "./images/cms/menu/";
                         break;
                     case "header_pic":
                         $destination_folder = "./images/cms/headers/";
                         break;
                     case "menu_pic_a":
                         $destination_folder = "./images/cms/menu/";
                         break;
                     default:
                         $destination_folder = "./images/cms/data/";
                         break;
                 }
                 // TODO: вставить проверку на необходимость наложения на картинку водного знака (by lauri)
                 $oldValue = $object->getValue($field_name);
                 if ($value = umiImageFile::upload("data", $field_name, substr($destination_folder, 2), $key)) {
                     $field_value = $value;
                 } else {
                     $file_name = substr($field_value, 0, 2) == "./" ? $field_value : $destination_folder . $field_value;
                     $field_value = new umiImageFile($file_name);
                 }
                 break;
             case "video_file":
             case "swf_file":
                 $destination_folder = "./files/" . (is_dir("./files/" . $fldr_name) ? $fldr_name : '');
                 if ($value = umiFile::upload("data", $field_name, $destination_folder, $key)) {
                     $field_value = $value;
                 } else {
                     $oldvalue = $object->getValue($field_name);
                     if ($oldvalue) {
                         $destination_folder = $oldvalue->getDirName() . "/";
                     }
                     $file_name = substr($field_value, 0, 2) == "./" ? $field_value : $destination_folder . $field_value;
                     $field_value = new umiFile($file_name);
                 }
                 break;
             case "file":
                 $destination_folder = "./files/" . (is_dir("./files/" . $fldr_name) ? $fldr_name : '');
                 if ($value = umiFile::upload("data", $field_name, $destination_folder, $key)) {
                     $field_value = $value;
                 } else {
                     $oldvalue = $object->getValue($field_name);
                     if ($oldvalue) {
                         $destination_folder = $oldvalue->getDirName() . "/";
                     }
                     $file_name = substr($field_value, 0, 2) == "./" ? $field_value : $destination_folder . $field_value;
                     $field_value = new umiFile($file_name);
                 }
                 break;
             case "string":
             case "text":
             case "wysiwyg":
                 if ($cmsController->getCurrentMode() != "admin") {
                     $field_value = strip_tags($field_value);
                 }
                 break;
         }
         $object->setValue($field_name, $field_value);
     }
     $object->commit();
     return true;
 }
Example #14
0
 protected static function saveFieldValue($name, $value, $target, $save = false)
 {
     $hierarchy = umiHierarchy::getInstance();
     if ($i = strpos($name, '[')) {
         if (preg_match_all("/\\[([^\\[^\\]]+)\\]/", substr($name, $i), $out)) {
             $optionParams = array('filter' => array(), 'field-type' => null);
             foreach ($out[1] as $param) {
                 if (strpos($param, ':')) {
                     list($seekType, $seekValue) = explode(':', $param);
                     $optionParams['filter'][$seekType] = $seekValue;
                 } else {
                     $optionParams['field-type'] = $param;
                 }
             }
         }
         $name = substr($name, 0, $i);
     } else {
         $optionParams = null;
     }
     if ($name != 'name' && $name != 'alt_name') {
         $object = $target instanceof iUmiHierarchyElement ? $target->getObject() : $target;
         $property = $object->getPropByName($name);
         if ($property instanceof iUmiObjectProperty == false) {
             throw new publicException(getLabel('eip-no-field') . ": \"{$name}\"");
         }
         $field = $property->getField();
     }
     if ($name == 'name' || $name == 'alt_name') {
         $type = 'string';
     } else {
         $type = $field->getDataType();
     }
     if (is_string($value)) {
         $value = __editor_content::filterStringValue($value);
     }
     $oldLink = null;
     $newLink = null;
     if ($save) {
         umiObjectProperty::$IGNORE_FILTER_INPUT_STRING = true;
         if ($name == 'h1' || $name == 'name') {
             $value = strip_tags($value);
             $value = str_replace(array('&nbsp;', '&amp;'), array(' ', '&'), $value);
             if ($name === 'name') {
                 // При изменении name: если name==h1, name=h1=new_value
                 // При изменении name: если name!=h1, name=new_value.
                 if ($target->getName() === (string) $target->getValue('h1')) {
                     $target->setValue('h1', $value);
                 }
                 $target->setName($value);
             } else {
                 // При изменении h1: если h1 == name && name=='', name=h1=new_value
                 // При изменении h1: если h1 == name и name != '', h1=new_value
                 // При изменении h1: если h1 != name, h1=new_value
                 if ($target->getName() === (string) $target->getValue('h1') && $target->getName() === '') {
                     $target->setName($value);
                 }
                 $target->setValue('h1', $value);
             }
             if ($target instanceof iUmiHierarchyElement) {
                 $oldLink = $hierarchy->getPathById($target->id);
                 $altName = $target->getAltName();
                 if (!$altName || substr($altName, 0, 1) == '_') {
                     $target->setAltName($value);
                     $target->commit();
                 }
                 $newLink = $hierarchy->getPathById($target->id, false, false, true);
             }
         } elseif ($name == 'alt_name') {
             if ($target instanceof iUmiHierarchyElement) {
                 $target->setAltName($value);
                 $target->commit();
                 $newLink = $hierarchy->getPathById($target->id, false, false, true);
             }
         } else {
             if ($type == 'date') {
                 $date = new umiDate();
                 $date->setDateByString($value);
                 $value = $date;
                 unset($date);
                 $value = $value->getFormattedDate('U');
             }
             if ($type == 'optioned') {
                 $seekType = getArrayKey($optionParams, 'field-type');
                 $filter = getArrayKey($optionParams, 'filter');
                 $oldValue = $target->getValue($name);
                 foreach ($oldValue as $i => $v) {
                     foreach ($filter as $t => $s) {
                         if (getArrayKey($v, $t) != $s) {
                             continue 2;
                         }
                         $oldValue[$i][$seekType] = $value;
                     }
                 }
                 $value = $oldValue;
                 unset($oldValue);
             }
             if ($type == 'symlink') {
                 $value = $value;
             }
             if ($type == 'wysiwyg') {
                 $out = array();
                 if (preg_match_all("/href=[\"']?([^ ^\"^']+)[\"']?/i", $value, $out)) {
                     foreach ($out[1] as $link) {
                         $id = $hierarchy->getIdByPath($link);
                         if ($id) {
                             $link = str_replace("/", "\\/", $link);
                             $value = preg_replace("/(href=[\"']?)" . $link . "([\"']?)/i", "\\1%content get_page_url({$id})%\\2", $value);
                         }
                     }
                 }
             } else {
                 $value = str_replace(array('&nbsp;', '&amp;'), array(' ', '&'), $value);
             }
             if (in_array($type, array('text', 'string', 'int', 'float', 'price', 'date', 'tags', 'counter'))) {
                 $value = preg_replace("/<br ?\\/?>/i", "\n", $value);
                 $value = strip_tags($value);
             }
             if (in_array($type, array('img_file', 'swf_file', 'file', 'video_file')) && $value) {
                 if (substr($value, 0, 1) != '.') {
                     $value = '.' . $value;
                 }
             }
             $target->setValue($name, $value);
         }
         $target->commit();
         umiObjectProperty::$IGNORE_FILTER_INPUT_STRING = false;
         if ($target instanceof iUmiHierarchyElement) {
             $backup = backupModel::getInstance();
             $backup->fakeBackup($target->id);
         }
         $oEventPoint = new umiEventPoint("eipSave");
         $oEventPoint->setMode("after");
         $oEventPoint->setParam("field_name", $name);
         $oEventPoint->setParam("obj", $target);
         def_module::setEventPoint($oEventPoint);
     }
     if ($name == 'name') {
         $value = $target->getName();
     } else {
         $value = $target->getValue($name, $optionParams);
     }
     if ($save) {
         $value = xmlTranslator::executeMacroses($value);
     }
     if ($type == 'date') {
         if ($value) {
             $date = new umiDate();
             $date->setDateByString($value);
             $value = $date->getFormattedDate('Y-m-d H:i');
         } else {
             $value = '';
         }
     }
     if ($type == 'tags' && is_array($value)) {
         $value = implode(', ', $value);
     }
     if ($type == 'optioned' && !is_null($optionParams)) {
         $value = isset($value[0]) ? $value[0] : '';
         $type = getArrayKey($optionParams, 'field-type');
     }
     $result = array('attribute:name' => $name, 'attribute:type' => $type);
     if ($type == 'relation') {
         $items_arr = array();
         if ($value) {
             if (!is_array($value)) {
                 $value = array($value);
             }
             $objects = umiObjectsCollection::getInstance();
             foreach ($value as $objectId) {
                 $object = $objects->getObject($objectId);
                 $items_arr[] = $object;
             }
         }
         $result['attribute:guide-id'] = $field->getGuideId();
         if ($field->getFieldType()->getIsMultiple()) {
             $result['attribute:multiple'] = 'multiple';
         }
         $type = selector::get('object-type')->id($field->getGuideId());
         if ($type && $type->getIsPublic()) {
             $result['attribute:public'] = 'public';
         }
         $result['nodes:item'] = $items_arr;
     } else {
         if ($type == 'symlink') {
             $result['nodes:page'] = is_array($value) ? $value : array();
         } else {
             $result['node:value'] = $value;
         }
     }
     if ($oldLink != $newLink) {
         $result['attribute:old-link'] = $oldLink;
         $result['attribute:new-link'] = $newLink;
     }
     return $result;
 }