Exemplo n.º 1
0
 /**
  * Закрывает одно сообщение и сохраняет информацию об этом в профиле пользователя
  * 
  */
 public function closeUmiMessage()
 {
     $this->flushAsXML("closeUmiMessage");
     $permissions = permissionsCollection::getInstance();
     $objects = umiObjectsCollection::getInstance();
     $user_id = $permissions->getUserId();
     $user = $objects->getObject($user_id);
     if ($user instanceof umiObject == false) {
         throw new coreException("Can't get current user with id #{$user_id}");
     }
     $settings_data = $user->getValue("user_settings_data");
     $settings_data = unserialize($settings_data);
     if (!is_array($settings_data)) {
         $settings_data = array();
     }
     $value = (int) getRequest('value');
     if (isset($settings_data['umiMessages']['closed']) && $settings_data['umiMessages']['closed'] != '') {
         $closed = explode(';', $settings_data['umiMessages']['closed']);
         $closed[] = $value;
         $closed = array_unique($closed);
         $settings_data['umiMessages']['closed'] = implode(';', $closed);
     } else {
         $settings_data['umiMessages']['closed'] = $value;
     }
     $user->setValue("user_settings_data", serialize($settings_data));
     $user->commit();
 }
Exemplo n.º 2
0
 public function get_filemanager_info()
 {
     $buffer = outputBuffer::current();
     $buffer->contentType('text/javascript');
     $buffer->option('generation-time', false);
     $buffer->clear();
     $json = new jsonTranslator();
     $folder = (string) getRequest('folder');
     $file = (string) getRequest('file');
     $folderHash = $folder ? elfinder_get_hash($folder) : '';
     $fileHash = $file ? elfinder_get_hash($file) : '';
     $objects = umiObjectsCollection::getInstance();
     $userId = permissionsCollection::getInstance()->getUserId();
     $user = $objects->getObject($userId);
     $fmId = $user->getValue('filemanager');
     if ($fmId) {
         $fm = $objects->getObject($fmId);
         $fmPrefix = $fm->getValue('fm_prefix') ? $fm->getValue('fm_prefix') : 'elfinder';
     } else {
         $fmPrefix = 'elfinder';
     }
     $lang = cmsController::getInstance()->getCurrentLang()->getPrefix();
     $data = array('folder_hash' => $folderHash, 'file_hash' => $fileHash, 'filemanager' => $fmPrefix, 'lang' => $lang);
     $result = $json->translateToJson($data);
     $buffer->push($result);
     $buffer->end();
 }
Exemplo n.º 3
0
 public function profile($template = "default", $user_id = false)
 {
     if (!$template) {
         $template = "default";
     }
     list($template_block, $template_bad_user_block) = def_module::loadTemplates("users/profile/" . $template, "profile_block", "bad_user_block");
     $block_arr = array();
     if (!$user_id) {
         $user_id = (int) getRequest('param0');
     }
     if (!$user_id) {
         $permissions = permissionsCollection::getInstance();
         if ($permissions->isAuth()) {
             $user_id = $permissions->getUserId();
         }
     }
     if ($user = selector::get('object')->id($user_id)) {
         $this->validateEntityByTypes($user, array('module' => 'users', 'method' => 'user'));
         $block_arr['xlink:href'] = "uobject://" . $user_id;
         $userTypeId = $user->getTypeId();
         if ($userType = umiObjectTypesCollection::getInstance()->getType($userTypeId)) {
             $userHierarchyTypeId = $userType->getHierarchyTypeId();
             if ($userHierarchyType = umiHierarchyTypesCollection::getInstance()->getType($userHierarchyTypeId)) {
                 if ($userHierarchyType->getName() == "users" && $userHierarchyType->getExt() == "user") {
                     $block_arr['id'] = $user_id;
                     return def_module::parseTemplate($template_block, $block_arr, false, $user_id);
                 }
             }
         }
     } else {
         throw new publicException(getLabel('error-object-does-not-exist', null, $user_id));
     }
     return def_module::parseTemplate($template_bad_user_block, $block_arr);
 }
Exemplo n.º 4
0
 public static function isAllowedFileType($v566bbee0f961ad71b54c3c2fd36db053)
 {
     $v566bbee0f961ad71b54c3c2fd36db053 = strtolower($v566bbee0f961ad71b54c3c2fd36db053);
     if (in_array($v566bbee0f961ad71b54c3c2fd36db053, self::$forbiddenFileTypes)) {
         return false;
     }
     if (in_array($v566bbee0f961ad71b54c3c2fd36db053, self::$allowedFileTypes) || in_array($v566bbee0f961ad71b54c3c2fd36db053, self::$allowedImageTypes)) {
         return true;
     }
     if (is_null(self::$allowedUserFileTypes)) {
         $v8e44f0089b076e18a718eb9ca3d94674 = permissionsCollection::getInstance()->getUserId();
         $v23e91e891070db669547556402a176b5 = umiObjectsCollection::getInstance()->getObject($v8e44f0089b076e18a718eb9ca3d94674)->getValue('appended_file_extensions');
         self::$allowedUserFileTypes = array();
         foreach (explode(',', $v23e91e891070db669547556402a176b5) as $va175f0d82e080972dd2c0cf2c56450b3) {
             $va175f0d82e080972dd2c0cf2c56450b3 = strtolower(trim($va175f0d82e080972dd2c0cf2c56450b3));
             if (strlen($va175f0d82e080972dd2c0cf2c56450b3)) {
                 self::$allowedUserFileTypes[] = $va175f0d82e080972dd2c0cf2c56450b3;
             }
         }
     }
     if (in_array($v566bbee0f961ad71b54c3c2fd36db053, self::$allowedUserFileTypes)) {
         return true;
     }
     return false;
 }
Exemplo n.º 5
0
		/**
			* Слить все заказы покупателя в профиль пользователя.
			* Объект покупателя после этого будет уничтожен
		*/
		public function merge(umiObject $customer) {

			$cmsController = cmsController::getInstance();
			$domain = $cmsController->getCurrentDomain();
			$domainId = $domain->getId();

			$sel = new selector('objects');
			$sel->types('object-type')->name('emarket', 'order');
			$sel->where('customer_id')->equals($customer->id);
			$sel->where('domain_id')->equals($domainId);
			$sel->order('id')->desc();

			$permissions = permissionsCollection::getInstance();
			$userId = $permissions->getUserId();

			foreach($sel as $order) {
				if(!$order->status_id) {
					$this->mergeBasket($order);
					continue;
				}

				$order->customer_id = $userId;
				$order->commit();
			}
			if (!defined('UMICMS_CLI_MODE') || !UMICMS_CLI_MODE) {
				setcookie('customer-id', 0, 1, '/');
			}
			$customer->delete();
		}
Exemplo n.º 6
0
 public static function checkCaptcha()
 {
     $v2245023265ae4cf87d02c8b6ba991139 = mainConfiguration::getInstance();
     if (!$v2245023265ae4cf87d02c8b6ba991139->get('anti-spam', 'captcha.enabled')) {
         return true;
     }
     $v41275a535677f79ff347e01bc530c176 = permissionsCollection::getInstance();
     if ($v41275a535677f79ff347e01bc530c176->isAuth()) {
         return true;
     }
     if (isset($_COOKIE['umi_captcha']) && strlen($_COOKIE['umi_captcha'])) {
         if ($_COOKIE['umi_captcha'] == md5(getArrayKey($_COOKIE, 'user_captcha')) || $_COOKIE['umi_captcha'] == md5(getRequest('captcha'))) {
             $v70b29c4920daf4e51e8175179027e668 = getRequest('captcha');
             if (md5($v70b29c4920daf4e51e8175179027e668) == $_COOKIE['umi_captcha']) {
                 setcookie("user_captcha", $v70b29c4920daf4e51e8175179027e668, time() + 3600 * 24 * 31, "/");
             }
             $_SESSION['is_human'] = 1;
             return true;
         } else {
             unset($_SESSION['is_human']);
             return false;
         }
     }
     return false;
 }
Exemplo n.º 7
0
 public function cleanup($v9a0364b9e99bb480dd25e1f0284c8555)
 {
     $v41275a535677f79ff347e01bc530c176 = permissionsCollection::getInstance();
     $v2245023265ae4cf87d02c8b6ba991139 = mainConfiguration::getInstance();
     if (!$v41275a535677f79ff347e01bc530c176->isAdmin() && (int) $v2245023265ae4cf87d02c8b6ba991139->get('system', 'clean-eip-attributes')) {
         $v9a0364b9e99bb480dd25e1f0284c8555 = $this->cleanEIPAttributes($v9a0364b9e99bb480dd25e1f0284c8555);
     }
     if (!intval($v2245023265ae4cf87d02c8b6ba991139->get("kernel", "show-broken-macro"))) {
         $v9a0364b9e99bb480dd25e1f0284c8555 = $this->cleanBrokenMacro($v9a0364b9e99bb480dd25e1f0284c8555);
     }
     return $v9a0364b9e99bb480dd25e1f0284c8555;
 }
Exemplo n.º 8
0
 public function shared_file($template = "default", $element_path = false)
 {
     if (!$template) {
         $template = "default";
     }
     list($s_download_file, $s_broken_file, $s_upload_file) = def_module::loadTemplates("filemanager/" . $template, "shared_file", "broken_file", "upload_file");
     $element_id = $this->analyzeRequiredPath($element_path);
     $element = umiHierarchy::getInstance()->getElement($element_id);
     $block_arr = array();
     $template_block = $s_broken_file;
     if ($element) {
         // upload file if allowed
         $iUserId = cmsController::getInstance()->getModule('users')->user_id;
         list($bAllowRead, $bAllowWrite) = permissionsCollection::getInstance()->isAllowedObject($iUserId, $element_id);
         $block_arr['upload_file'] = "";
         if ($bAllowWrite) {
             $block_arr['upload_file'] = $s_upload_file;
             // upload first file in $_FILES
             if (count($_FILES)) {
                 $oUploadedFile = umiFile::upload("shared_files", "upload", "./files/");
                 if ($oUploadedFile instanceof umiFile) {
                     $element->setValue("fs_file", $oUploadedFile);
                     $element->commit();
                 }
             }
         }
         $block_arr['id'] = $element_id;
         $block_arr['descr'] = ($descr = $element->getValue("descr")) ? $descr : $element->getValue("content");
         $block_arr['alt_name'] = $element->getAltName();
         $block_arr['link'] = umiHierarchy::getInstance()->getPathById($element_id);
         // file
         $block_arr['download_link'] = "";
         $block_arr['file_name'] = "";
         $block_arr['file_size'] = 0;
         $o_file = $element->getValue("fs_file");
         if ($o_file instanceof umiFile) {
             if (!$o_file->getIsBroken()) {
                 $template_block = $s_download_file;
                 $block_arr['download_link'] = $this->pre_lang . "/filemanager/download/" . $element_id;
                 $block_arr['file_name'] = $o_file->getFileName();
                 $block_arr['file_size'] = round($o_file->getSize() / 1024, 2);
             }
         }
     } else {
         return cmsController::getInstance()->getModule("users")->auth();
     }
     $this->pushEditable("filemanager", "shared_file", $element_id);
     return self::parseTemplate($template_block, $block_arr);
 }
Exemplo n.º 9
0
 public function getSystemEventRecipients()
 {
     $permissions = permissionsCollection::getInstance();
     $currentUserId = $permissions->getUserId();
     $sel = new selector('objects');
     $sel->types('object-type')->name('users', 'user');
     $sel->where('groups')->equals(SV_GROUP_ID);
     $result = array(SV_USER_ID);
     foreach ($sel as $user) {
         if ($user->id != $currentUserId) {
             $result[] = $user->id;
         }
     }
     return $result;
 }
Exemplo n.º 10
0
		public function saveUserSettings() {
			$this->flushAsXML("saveUserSettings");
			
			$permissions = permissionsCollection::getInstance();
			$objects = umiObjectsCollection::getInstance();
			
			$user_id = $permissions->getUserId();
			$user = $objects->getObject($user_id);
			if($user instanceof umiObject == false) {
				throw new coreException("Can't get current user with id #{$user_id}");
			}
			
			$settings_data = $user->getValue("user_settings_data");
			$settings_data = unserialize($settings_data);
			if(!is_array($settings_data)) {
				$settings_data = Array();
			}
			
			$key = getRequest('key');
			$value = getRequest('value');
			$tags = (Array) getRequest('tags');
			
			if(!$key) {
				throw new publicException("You should pass \"key\" parameter to this resourse");
			}
			
			if(sizeof($tags) == 0) {
				$tags[] = 'common';
			}
			
			foreach($tags as $tag) {
				if(!$value) {
					if(isset($settings_data[$key][$tag])) {
						unset($settings_data[$key][$tag]);
						
						if(sizeof($settings_data[$key]) == 0) {
							unset($settings_data[$key]);
						}
					}
				} else {
					$settings_data[$key][$tag] = $value;
				}
			}
			
			$user->setValue("user_settings_data", serialize($settings_data));
			$user->commit();
		}
Exemplo n.º 11
0
 /**
  * Создать новый пустой заказ
  * @return Integer $order id нового заказа
  */
 public static function create($useDummyOrder = false)
 {
     $objectTypes = umiObjectTypesCollection::getInstance();
     $objects = umiObjectsCollection::getInstance();
     $permissions = permissionsCollection::getInstance();
     $cmsController = cmsController::getInstance();
     $domain = $cmsController->getCurrentDomain();
     $domainId = $domain->getId();
     $orderTypeId = $objectTypes->getBaseType('emarket', 'order');
     if ($useDummyOrder) {
         $sel = new selector('objects');
         $sel->types('object-type')->name('emarket', 'order');
         $sel->where('name')->equals('dummy');
         $sel->limit(0, 1);
         if ($sel->length()) {
             $orderId = $sel->first->id;
         } else {
             $orderTypeId = $objectTypes->getBaseType('emarket', 'order');
             $orderId = $objects->addObject('dummy', $orderTypeId);
             $order = $objects->getObject($orderId);
             if ($order instanceof iUmiObject == false) {
                 throw new publicException("Can't load dummy object for order #{$orderId}");
             } else {
                 $order->setValue('domain_id', $domainId);
                 $order->commit();
             }
         }
         return self::get($orderId);
     }
     $managerId = 0;
     $statusId = self::getStatusByCode('basket');
     $customer = customer::get();
     $createTime = time();
     $orderId = $objects->addObject('', $orderTypeId);
     $order = $objects->getObject($orderId);
     if ($order instanceof iUmiObject == false) {
         throw new publicException("Can't load created object for order #{$orderId}");
     }
     $order->domain_id = $domainId;
     $order->manager_id = $managerId;
     $order->status_id = $statusId;
     $order->customer_id = $customer->getId();
     $order->order_create_date = $createTime;
     $order->commit();
     $customer->setLastOrder($orderId, $domainId);
     return self::get($orderId);
 }
Exemplo n.º 12
0
 public function sitetree()
 {
     $domains = domainsCollection::getInstance()->getList();
     $permissions = permissionsCollection::getInstance();
     $user_id = $permissions->getUserId();
     $this->setDataType("list");
     $this->setActionType("view");
     foreach ($domains as $i => $domain) {
         $domain_id = $domain->getId();
         if (!$permissions->isAllowedDomain($user_id, $domain_id)) {
             unset($domains[$i]);
         }
     }
     $data = $this->prepareData($domains, "domains");
     $this->setData($data, sizeof($domains));
     return $this->doData();
 }
Exemplo n.º 13
0
 public function tickets()
 {
     $mode = getRequest('param0');
     $id = getRequest('param1');
     $objects = umiObjectsCollection::getInstance();
     $buffer = outputBuffer::current();
     $buffer->contentType('text/javascript');
     $buffer->option('generation-time', false);
     $buffer->clear();
     $json = new jsonTranslator();
     if ($mode == 'create') {
         $type = selector::get('object-type')->name('content', 'ticket');
         $id = $objects->addObject(null, $type->getId());
     }
     if ($id) {
         $ticket = selector::get('object')->id($id);
         $this->validateEntityByTypes($ticket, array('module' => 'content', 'method' => 'ticket'));
     } else {
         throw new publicException("Wrong params");
     }
     if ($mode == 'delete') {
         $objects->delObject($id);
         $buffer->end();
     }
     $ticket->x = (int) getRequest('x');
     $ticket->y = (int) getRequest('y');
     $ticket->width = (int) getRequest('width');
     $ticket->height = (int) getRequest('height');
     $ticket->message = $ticket->name = getRequest('message');
     $url = getRequest('referer') ? getRequest('referer') : getServer('HTTP_REFERER');
     $url = str_replace("%", "&#37", $url);
     if ($url) {
         $ticket->url = $url;
     }
     if ($mode == 'create') {
         $permissions = permissionsCollection::getInstance();
         $ticket->user_id = $permissions->getUserId();
     }
     $ticket->commit();
     $data = array('id' => $ticket->id);
     $result = $json->translateToJson($data);
     $buffer->push($result);
     $buffer->end();
 }
Exemplo n.º 14
0
 public function edit()
 {
     $element = $this->expectElement("param0");
     $mode = (string) getRequest('param1');
     $this->setHeaderLabel('header-blogs20-edit-' . $this->getObjectTypeMethod($element->getObject()));
     $inputData = array("element" => $element, "allowed-element-types" => array('post', 'blog', 'comment'));
     if ($mode == "do") {
         $this->saveEditedElementData($inputData);
         if ($element->getTypeId() == umiHierarchyTypesCollection::getInstance()->getTypeByName('blogs20', 'blog')->getId()) {
             permissionsCollection::getInstance()->setElementPermissions($element->getObject()->getOwnerId(), $element->getId(), 31);
         }
         $this->chooseRedirect();
     }
     $this->setDataType("form");
     $this->setActionType("modify");
     $data = $this->prepareData($inputData, "page");
     $this->setData($data);
     return $this->doData();
 }
 public static function runSelection(umiSelection $vef5714e0519bfaa645cdff7d28843b70)
 {
     static $v41275a535677f79ff347e01bc530c176;
     if ($vef5714e0519bfaa645cdff7d28843b70->result !== false) {
         return $vef5714e0519bfaa645cdff7d28843b70->result;
     }
     $v59f8ce5cb01404063bd7eb308df3b7dc = self::parseSelection($vef5714e0519bfaa645cdff7d28843b70);
     if (!$v59f8ce5cb01404063bd7eb308df3b7dc['result']) {
         return false;
     }
     $result = l_mysql_query($v59f8ce5cb01404063bd7eb308df3b7dc['result']);
     $v9b207167e5381c47682c6b4f58a623fb = array();
     while ($vf1965a857bc285d26fe22023aa5ab50d = mysql_fetch_row($result)) {
         list($v7057e8409c7c531a1a6e9ac3df4ed549) = $vf1965a857bc285d26fe22023aa5ab50d;
         if (isset($vf1965a857bc285d26fe22023aa5ab50d[1])) {
             if (!$v41275a535677f79ff347e01bc530c176) {
                 $v41275a535677f79ff347e01bc530c176 = permissionsCollection::getInstance();
             }
             $v41275a535677f79ff347e01bc530c176->pushElementPermissions($v7057e8409c7c531a1a6e9ac3df4ed549, $vf1965a857bc285d26fe22023aa5ab50d[1]);
         }
         $v7057e8409c7c531a1a6e9ac3df4ed549 = intval($v7057e8409c7c531a1a6e9ac3df4ed549);
         if (in_array($v7057e8409c7c531a1a6e9ac3df4ed549, $v9b207167e5381c47682c6b4f58a623fb) == false) {
             $v9b207167e5381c47682c6b4f58a623fb[] = $v7057e8409c7c531a1a6e9ac3df4ed549;
         }
     }
     if ($vef5714e0519bfaa645cdff7d28843b70->excludeNestedPages) {
         $v9b207167e5381c47682c6b4f58a623fb = self::excludeNestedPages($v9b207167e5381c47682c6b4f58a623fb);
     }
     $vef5714e0519bfaa645cdff7d28843b70->result = $v9b207167e5381c47682c6b4f58a623fb;
     if (defined("DISABLE_CALC_FOUND_ROWS")) {
         if (DISABLE_CALC_FOUND_ROWS) {
             $vac5c74b64b4b8352ef2f181affb5ac2a = "SELECT FOUND_ROWS()";
             $result = l_mysql_query($vac5c74b64b4b8352ef2f181affb5ac2a, true);
             list($ve2942a04780e223b215eb8b663cf5353) = mysql_fetch_row($result);
             $vef5714e0519bfaa645cdff7d28843b70->count = $ve2942a04780e223b215eb8b663cf5353;
         }
     }
     if ($vef5714e0519bfaa645cdff7d28843b70->optimize_root_search_query) {
         $vef5714e0519bfaa645cdff7d28843b70->count = false;
     }
     return $vef5714e0519bfaa645cdff7d28843b70->result;
 }
Exemplo n.º 16
0
 public static function getUser()
 {
     static $vee11cbb19052e40b07aac0ca060c23ee = null;
     if ($vee11cbb19052e40b07aac0ca060c23ee) {
         return $vee11cbb19052e40b07aac0ca060c23ee;
     }
     $vb10a8c0bede9eb4ea771b04db3149f28 = ConnectionPool::getInstance();
     $v4717d53ebfdfea8477f780ec66151dcb = $vb10a8c0bede9eb4ea771b04db3149f28->getConnection();
     umiEventFeedUser::setConnection($v4717d53ebfdfea8477f780ec66151dcb);
     umiEventFeedType::setConnection($v4717d53ebfdfea8477f780ec66151dcb);
     $v8e44f0089b076e18a718eb9ca3d94674 = permissionsCollection::getInstance()->getUserId();
     try {
         $vee11cbb19052e40b07aac0ca060c23ee = umiEventFeedUser::get($v8e44f0089b076e18a718eb9ca3d94674);
     } catch (Exception $ve1671797c52e15f763380b45e841ec32) {
         $vee11cbb19052e40b07aac0ca060c23ee = umiEventFeedUser::create($v8e44f0089b076e18a718eb9ca3d94674);
         $v2e5d8aa3dfa8ef34ca5131d20f9dad51 = array();
         $vee11cbb19052e40b07aac0ca060c23ee->setSettings($v2e5d8aa3dfa8ef34ca5131d20f9dad51);
         $vee11cbb19052e40b07aac0ca060c23ee->save();
     }
     return $vee11cbb19052e40b07aac0ca060c23ee;
 }
    protected function run()
    {
        $v41275a535677f79ff347e01bc530c176 = permissionsCollection::getInstance();
        $v834239295ea6020233dda11b3d85af21 = $v41275a535677f79ff347e01bc530c176->isSv();
        $v15d61712450a686a7f365adf4fef581f = $this->selector->mode;
        l_mysql_query("START TRANSACTION /* Get alphabetical index */");
        l_mysql_query("DROP TABLE IF EXISTS `alphabetical_index`");
        $vac5c74b64b4b8352ef2f181affb5ac2a = "CREATE TABLE `alphabetical_index` (";
        $vac5c74b64b4b8352ef2f181affb5ac2a .= "id int  unsigned not null)";
        l_mysql_query($vac5c74b64b4b8352ef2f181affb5ac2a);
        $v1b1cc7f086b3f074da452bc3129981eb = $this->selector->query();
        $vac5c74b64b4b8352ef2f181affb5ac2a = "INSERT INTO `alphabetical_index` {$v1b1cc7f086b3f074da452bc3129981eb}";
        l_mysql_query($vac5c74b64b4b8352ef2f181affb5ac2a);
        if ($v15d61712450a686a7f365adf4fef581f == 'pages') {
            $vac5c74b64b4b8352ef2f181affb5ac2a = <<<SQL
SELECT LEFT(LOWER(`o`.`name`), 1) AS `letter`, COUNT(*) AS `cnt`
\tFROM `alphabetical_index` `ai`, `cms3_hierarchy` `h`, `cms3_objects` `o`
\tWHERE `h`.`id` = `ai`.`id` AND `o`.`id` = `h`.`obj_id`
\tGROUP BY `letter`
\tORDER BY `letter`;
SQL;
        } else {
            $vac5c74b64b4b8352ef2f181affb5ac2a = <<<SQL
SELECT SQCL_CACHE LEFT(LOWER(`o`.`name`), 1) AS `letter`, COUNT(*) AS `cnt`
\tFROM `alphabetical_index` `ai`, `cms3_objects` `o`
\tWHERE `o`.`id` = `ai`.`id`
\tGROUP BY `letter`
\tORDER BY `letter`;
SQL;
        }
        $result = l_mysql_query($vac5c74b64b4b8352ef2f181affb5ac2a);
        $v6a992d5529f459a44fee58c733255e86 = array();
        while (list($vf5b75010ea8a54b96f8fe7dafac65c18, $ve2942a04780e223b215eb8b663cf5353) = mysql_fetch_row($result)) {
            $v6a992d5529f459a44fee58c733255e86[$vf5b75010ea8a54b96f8fe7dafac65c18] = (int) $ve2942a04780e223b215eb8b663cf5353;
        }
        l_mysql_query("DROP TABLE IF EXISTS `alphabetical_index`");
        l_mysql_query("COMMIT");
        return $v6a992d5529f459a44fee58c733255e86;
    }
Exemplo n.º 18
0
 public function addNewPicasaPhotoalbum($title, $body)
 {
     $hierarchy = umiHierarchy::getInstance();
     $hierarchyTypes = umiHierarchyTypesCollection::getInstance();
     $cmsController = cmsController::getInstance();
     $hierarchy_type_id = $hierarchyTypes->getTypeByName("photoalbum", "album")->getId();
     $element_id = $hierarchy->addElement(0, $hierarchy_type_id, $title, $title);
     permissionsCollection::getInstance()->setDefaultPermissions($element_id);
     $element = $hierarchy->getElement($element_id, true);
     $element->setIsActive(true);
     $element->setIsVisible(false);
     $element->setName($title);
     $element->setValue("h1", $title);
     $element->setValue("descr", $body);
     $element->setValue("create_time", time());
     $element->commit();
     return $element_id;
 }
Exemplo n.º 19
0
	public function restoreUser() {

		$userId = getSession('old_user_id');
		
		$objects = umiObjectsCollection::getInstance();
		$user = $objects->getObject($userId);
		if (!$user instanceof umiObject) {
			return false;
		}
		
		session_destroy();

		setcookie('u-login', "", time() - 3600, "/");
		setcookie('u-password', "", time() - 3600, "/");
		setcookie('u-password-md5', "", time() - 3600, "/");
		setcookie ('eip-panel-state-first', "", time() - 3600, "/");
		setcookie('customer-id', "", time() - 3600, "/");

		session_start();
		
		$permissions = permissionsCollection::getInstance();
		$permissions->loginAsUser($userId);
		if ($permissions->isSv($userId)) {
			$_SESSION['user_is_sv'] = true;
		}
		
		$this->redirect("/");
	}
Exemplo n.º 20
0
 protected function addOwner($vb0ab4f7791b60b1e8ea01057b77873b0)
 {
     if (in_array($vb0ab4f7791b60b1e8ea01057b77873b0, $this->owners)) {
         return;
     }
     $v41275a535677f79ff347e01bc530c176 = permissionsCollection::getInstance();
     $v5891da2d64975cae48d175d1e001f5da = umiObjectsCollection::getInstance();
     $va8cfde6331bd59eb2ac96f8911c4b666 = $v5891da2d64975cae48d175d1e001f5da->getObject($vb0ab4f7791b60b1e8ea01057b77873b0);
     if ($va8cfde6331bd59eb2ac96f8911c4b666 instanceof iUmiObject) {
         if ($v41275a535677f79ff347e01bc530c176->isSv($vb0ab4f7791b60b1e8ea01057b77873b0)) {
             $this->isSv = true;
             return;
         }
         $this->owners[] = $vb0ab4f7791b60b1e8ea01057b77873b0;
         if ($va8cfde6331bd59eb2ac96f8911c4b666->groups) {
             $this->owners = array_merge($this->owners, $va8cfde6331bd59eb2ac96f8911c4b666->groups);
         }
     }
 }
Exemplo n.º 21
0
 public function message_post_do()
 {
     if ($users_inst = cmsController::getInstance()->getModule("users")) {
         if (!$users_inst->is_auth()) {
             if (!regedit::getInstance()->getVal("//modules/forum/allow_guest")) {
                 return "%forum_not_allowed_post%";
             }
         }
     }
     $title = getRequest('title');
     $body = getRequest('body');
     $title = htmlspecialchars($title);
     $body = htmlspecialchars($body);
     $nickname = htmlspecialchars(getRequest('nickname'));
     $email = htmlspecialchars(getRequest('email'));
     $ip = getServer('REMOTE_ADDR');
     $publish_time = new umiDate(time());
     $parent_id = (int) getRequest('param0');
     $parent_element = umiHierarchy::getInstance()->getElement($parent_id, true);
     if (!strlen(trim($title)) && $parent_element instanceof umiHierarchyElement) {
         $title = "Re: " . $parent_element->getName();
     }
     // check captcha
     $referer_url = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '/';
     if (isset($_REQUEST['captcha'])) {
         $_SESSION['user_captcha'] = md5((int) getRequest('captcha'));
     }
     if (!umiCaptcha::checkCaptcha() || !$parent_element) {
         $this->errorNewMessage('%errors_wrong_captcha%', false);
         $this->errorPanic();
     }
     if (!strlen(trim($body))) {
         $this->errorNewMessage('%error_message_empty%', false);
         $this->errorPanic();
     }
     $lang_id = cmsController::getInstance()->getCurrentLang()->getId();
     $domain_id = cmsController::getInstance()->getCurrentDomain()->getId();
     $tpl_id = $parent_element->getTplId();
     $hierarchy_type_id = umiHierarchyTypesCollection::getInstance()->getTypeByName("forum", "message")->getId();
     $object_type_id = umiObjectTypesCollection::getInstance()->getBaseType("forum", "message");
     $is_supervisor = false;
     if ($users_inst = cmsController::getInstance()->getModule("users")) {
         if ($users_inst->is_auth()) {
             $user_id = $users_inst->user_id;
             $author_id = $users_inst->createAuthorUser($user_id);
             $is_supervisor = $users_inst->isSv($user_id);
         } else {
             $author_id = $users_inst->createAuthorGuest($nickname, $email, $ip);
         }
         $author = umiObjectsCollection::getInstance()->getObject($author_id);
         $author->commit();
     }
     $element_id = umiHierarchy::getInstance()->addElement($parent_id, $hierarchy_type_id, $title, $title, $object_type_id, $domain_id, $lang_id, $tpl_id);
     permissionsCollection::getInstance()->setDefaultPermissions($element_id);
     $element = umiHierarchy::getInstance()->getElement($element_id, true);
     $element->setIsVisible(false);
     $bNeedModerate = !$is_supervisor && regedit::getInstance()->getVal("//modules/forum/need_moder");
     if (!$bNeedModerate) {
         $bNeedModerate = !antiSpamHelper::checkContent($body . $title . $nickname . $email);
     }
     $element->setIsActive(!$bNeedModerate);
     $element->setAltName($title);
     $element->getObject()->setName($title);
     $element->setValue("meta_descriptions", "");
     $element->setValue("meta_keywords", "");
     $element->setValue("h1", $title);
     $element->setValue("title", $title);
     $element->setValue("is_expanded", false);
     $element->setValue("show_submenu", false);
     $element->setValue("message", $body);
     $element->setValue("author_id", $author_id);
     $element->setValue("publish_time", $publish_time);
     if ($headers = umiFile::upload("pics", "headers", "./images/cms/headers/")) {
         $element->setValue("header_pic", $headers);
     }
     $object_id = $element->getObject()->getId();
     $data_module = cmsController::getInstance()->getModule('data');
     $data_module->saveEditedObject($object_id, true);
     $element->commit();
     if (!defined("DISABLE_SEARCH_REINDEX")) {
         define("DISABLE_SEARCH_REINDEX", 1);
     }
     if ($parent_id) {
         $parentElement = umiHierarchy::getInstance()->getElement($element->getRel());
         if ($parentElement instanceof umiHierarchyElement) {
             $parentElement->setValue("last_message", $element_id);
             $parentElement->setValue("last_post_time", time());
             $parentElement->commit();
         }
         $parentElement = umiHierarchy::getInstance()->getElement($parentElement->getRel());
         if ($parentElement instanceof umiHierarchyElement) {
             $parentElement->setValue("last_message", $element_id);
             $parentElement->commit();
         }
     }
     if (!$bNeedModerate) {
         $this->recalcCounts($element);
     }
     $oEventPoint = new umiEventPoint("forum_message_post_do");
     $oEventPoint->setMode("after");
     $oEventPoint->setParam("topic_id", $parent_id);
     $oEventPoint->setParam("message_id", $element_id);
     $this->setEventPoint($oEventPoint);
     $path = $bNeedModerate ? $referer_url : $this->getMessageLink($element_id);
     $this->redirect($path);
 }
 protected function translateData(iUmiHierarchyElement $v8e2dcfd7e7e24b1ca76c1193f645902b)
 {
     $v7552cd149af7495ee7d8225974e50f80 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getId();
     $v26b75b176d665f24a5fd22a2ad815763 = array();
     $v8b1dc169bf460ee884fceef66c6607d6 = cmsController::getInstance();
     $vb81ca7c0ccaa77e7aa91936ab0070695 = umiHierarchy::getInstance();
     $v6942e8fa62b3cc9d93881a58210e2fd7 = umiHierarchyTypesCollection::getInstance();
     $v0e8133eb006c0f85ed9444ae07a60842 = umiObjectTypesCollection::getInstance();
     $v5891da2d64975cae48d175d1e001f5da = umiObjectsCollection::getInstance();
     $vb1444fb0c07653567ad325aa25d4e37a = regedit::getInstance();
     $v26b75b176d665f24a5fd22a2ad815763['@id'] = $v7552cd149af7495ee7d8225974e50f80;
     $v26b75b176d665f24a5fd22a2ad815763['@parentId'] = $v8e2dcfd7e7e24b1ca76c1193f645902b->getParentId();
     $v26b75b176d665f24a5fd22a2ad815763['@link'] = $vb81ca7c0ccaa77e7aa91936ab0070695->getPathById($v7552cd149af7495ee7d8225974e50f80);
     if ($vf62baf4c4ead98d50d516eca0ac5a746 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getIsDefault()) {
         $v26b75b176d665f24a5fd22a2ad815763['@is-default'] = $vf62baf4c4ead98d50d516eca0ac5a746;
     }
     if ($ve1c6c9ef2fcbe75f26f815c4ef2e60b4 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getIsVisible()) {
         $v26b75b176d665f24a5fd22a2ad815763['@is-visible'] = $ve1c6c9ef2fcbe75f26f815c4ef2e60b4;
     }
     if ($v4264c638e0098acb172519b0436db099 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getIsActive()) {
         $v26b75b176d665f24a5fd22a2ad815763['@is-active'] = $v4264c638e0098acb172519b0436db099;
     }
     if ($vf49e2553045b3240a95c36854d36dddc = $v8e2dcfd7e7e24b1ca76c1193f645902b->getIsDeleted()) {
         $v26b75b176d665f24a5fd22a2ad815763['@is-deleted'] = $vf49e2553045b3240a95c36854d36dddc;
     }
     $v840767d63139b4dca4928d5ec734c79e = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject()->getValue("lockuser");
     if ($v840767d63139b4dca4928d5ec734c79e > 0) {
         $v31e6b624e5c05c45b0f1e8a7f59801ba = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject()->getValue("locktime");
         $vcdd638e00095e76c42db80d69dfdec30 = $v8b1dc169bf460ee884fceef66c6607d6->getModule("users")->user_id;
         $vd5034fb9092631c8a2869ebb11b5c591 = $vb1444fb0c07653567ad325aa25d4e37a->getVal("//settings/lock_duration");
         if ($v31e6b624e5c05c45b0f1e8a7f59801ba && $v31e6b624e5c05c45b0f1e8a7f59801ba->timestamp + $vd5034fb9092631c8a2869ebb11b5c591 > time()) {
             if ($vcdd638e00095e76c42db80d69dfdec30 != $v840767d63139b4dca4928d5ec734c79e) {
                 $v797bf25c165393c1aa5fd92576e0f011['user-id'] = $v840767d63139b4dca4928d5ec734c79e;
                 $v0db00a6b60c9e7fa0cda63a96270ca2b = $v5891da2d64975cae48d175d1e001f5da->getObject($v840767d63139b4dca4928d5ec734c79e);
                 $v797bf25c165393c1aa5fd92576e0f011['login'] = $v0db00a6b60c9e7fa0cda63a96270ca2b->getValue("login");
                 $v797bf25c165393c1aa5fd92576e0f011['lname'] = $v0db00a6b60c9e7fa0cda63a96270ca2b->getValue("lname");
                 $v797bf25c165393c1aa5fd92576e0f011['fname'] = $v0db00a6b60c9e7fa0cda63a96270ca2b->getValue("fname");
                 $v797bf25c165393c1aa5fd92576e0f011['father-name'] = $v0db00a6b60c9e7fa0cda63a96270ca2b->getValue("father_name");
                 $v797bf25c165393c1aa5fd92576e0f011['locktime'] = $v31e6b624e5c05c45b0f1e8a7f59801ba->getFormattedDate();
                 $v797bf25c165393c1aa5fd92576e0f011['@ts'] = $v31e6b624e5c05c45b0f1e8a7f59801ba->timestamp;
                 $v26b75b176d665f24a5fd22a2ad815763['locked-by'] = $v797bf25c165393c1aa5fd92576e0f011;
             }
         } else {
             $va8cfde6331bd59eb2ac96f8911c4b666 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject();
             $va8cfde6331bd59eb2ac96f8911c4b666->setValue("lockuser", null);
             $va8cfde6331bd59eb2ac96f8911c4b666->setValue("locktime", null);
             $va8cfde6331bd59eb2ac96f8911c4b666->commit();
             $v8e2dcfd7e7e24b1ca76c1193f645902b->commit();
         }
     }
     $v71860c77c6745379b0d44304d66b6a13 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject();
     $vac89cc3bb8407b8f6f24df3d2f088752 = $v71860c77c6745379b0d44304d66b6a13->getValue("expiration_date");
     $ve7e2aab29960a1faeb82a86368ea4b58 = $v71860c77c6745379b0d44304d66b6a13->getValue("publish_status");
     $vdbf113427c1e27923793e77460b11ee7 = $v5891da2d64975cae48d175d1e001f5da->getObject($ve7e2aab29960a1faeb82a86368ea4b58);
     $v9acb44549b41563697bb490144ec6258 = array();
     if ($vb1444fb0c07653567ad325aa25d4e37a->getVal("//settings/expiration_control")) {
         if ($vdbf113427c1e27923793e77460b11ee7) {
             $v9acb44549b41563697bb490144ec6258['attribute:id'] = strlen($vfa816edb83e95bf0c8da580bdfd491ef = $vdbf113427c1e27923793e77460b11ee7->getValue("publish_status_id")) ? $vfa816edb83e95bf0c8da580bdfd491ef : 'page_status_publish';
             $v9acb44549b41563697bb490144ec6258['node:name'] = $vdbf113427c1e27923793e77460b11ee7->getName();
             $v018e77635d40709feb0c09c6fb84ee00['status'] = $v9acb44549b41563697bb490144ec6258;
             if ($vac89cc3bb8407b8f6f24df3d2f088752) {
                 $v018e77635d40709feb0c09c6fb84ee00['attribute:ts'] = $vac89cc3bb8407b8f6f24df3d2f088752->timestamp;
                 $v018e77635d40709feb0c09c6fb84ee00['date'] = $vac89cc3bb8407b8f6f24df3d2f088752->getFormattedDate();
                 $v018e77635d40709feb0c09c6fb84ee00['comments'] = $v71860c77c6745379b0d44304d66b6a13->getValue("publish_comments");
             }
         } else {
             $v9acb44549b41563697bb490144ec6258['@id'] = 'page_status_publish';
             $v9acb44549b41563697bb490144ec6258['#name'] = getLabel('object-status-publish');
             $v018e77635d40709feb0c09c6fb84ee00['status'] = $v9acb44549b41563697bb490144ec6258;
             $v018e77635d40709feb0c09c6fb84ee00['@ts'] = "";
         }
         $v26b75b176d665f24a5fd22a2ad815763['expiration'] = $v018e77635d40709feb0c09c6fb84ee00;
     }
     if (!is_null(getRequest('virtuals'))) {
         $v08a0dea3e6dbfe263d3379b421a06959 = $vb81ca7c0ccaa77e7aa91936ab0070695->checkIsVirtual(array($v7552cd149af7495ee7d8225974e50f80 => false));
         if (isset($v08a0dea3e6dbfe263d3379b421a06959[$v7552cd149af7495ee7d8225974e50f80]) && $v08a0dea3e6dbfe263d3379b421a06959[$v7552cd149af7495ee7d8225974e50f80]) {
             $v26b75b176d665f24a5fd22a2ad815763['virtual-copy'] = array('attribute:count' => $v08a0dea3e6dbfe263d3379b421a06959[$v7552cd149af7495ee7d8225974e50f80]);
         }
     }
     $v26b75b176d665f24a5fd22a2ad815763['@object-id'] = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject()->getId();
     $v26b75b176d665f24a5fd22a2ad815763['@object-guid'] = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject()->getGUID();
     $v26b75b176d665f24a5fd22a2ad815763['@type-id'] = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject()->getTypeId();
     $v26b75b176d665f24a5fd22a2ad815763['@type-guid'] = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject()->getTypeGUID();
     $v26b75b176d665f24a5fd22a2ad815763['@update-time'] = $v8e2dcfd7e7e24b1ca76c1193f645902b->getUpdatetime();
     $v26b75b176d665f24a5fd22a2ad815763['@alt-name'] = $v8e2dcfd7e7e24b1ca76c1193f645902b->getAltName();
     if (!is_null(getRequest('templates'))) {
         $v26b75b176d665f24a5fd22a2ad815763['@template-id'] = $v8e2dcfd7e7e24b1ca76c1193f645902b->getTplId();
         $v26b75b176d665f24a5fd22a2ad815763['@domain-id'] = $v8e2dcfd7e7e24b1ca76c1193f645902b->getDomainId();
         $v26b75b176d665f24a5fd22a2ad815763['@lang-id'] = $v8e2dcfd7e7e24b1ca76c1193f645902b->getLangId();
     }
     if (!is_null(getRequest('childs'))) {
         $vadce578d04ed03c31f6ac59451fcf8e4 = $vb81ca7c0ccaa77e7aa91936ab0070695->getChildsCount($v7552cd149af7495ee7d8225974e50f80, true, true, 1);
         $v26b75b176d665f24a5fd22a2ad815763['childs'] = $vadce578d04ed03c31f6ac59451fcf8e4;
     }
     if (!is_null(getRequest('permissions'))) {
         $vfd7b7118ef3b11157505a66f465d672f = permissionsCollection::getInstance();
         $v61b9295e93e2ba331ea1e6f1b79f459d = $vfd7b7118ef3b11157505a66f465d672f->isAllowedObject($vfd7b7118ef3b11157505a66f465d672f->getUserId(), $v7552cd149af7495ee7d8225974e50f80);
         $v26b75b176d665f24a5fd22a2ad815763['permissions'] = ($v61b9295e93e2ba331ea1e6f1b79f459d[4] ? 16 : 0) | ($v61b9295e93e2ba331ea1e6f1b79f459d[3] ? 8 : 0) | ($v61b9295e93e2ba331ea1e6f1b79f459d[2] ? 4 : 0) | ($v61b9295e93e2ba331ea1e6f1b79f459d[1] ? 2 : 0) | ($v61b9295e93e2ba331ea1e6f1b79f459d[0] ? 1 : 0);
     }
     $v0715f6d9497f93911417c9c324265771 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getTypeId();
     $vb946c44d711ade3b061653732977d043 = $v6942e8fa62b3cc9d93881a58210e2fd7->getType($v0715f6d9497f93911417c9c324265771);
     if (!is_null(getRequest('links')) && !$v8e2dcfd7e7e24b1ca76c1193f645902b->isDeleted) {
         $v5cd36db381c0678623647c8c221e158e = $vb946c44d711ade3b061653732977d043->getName();
         if ($v35360fb26b66092afbb3474e0dfe5c73 = $v8b1dc169bf460ee884fceef66c6607d6->getModule($v5cd36db381c0678623647c8c221e158e)) {
             $v807765384d9d5527da8848df14a4f02f = $v35360fb26b66092afbb3474e0dfe5c73->getEditLink($v7552cd149af7495ee7d8225974e50f80, $vb946c44d711ade3b061653732977d043->getExt());
             if (is_array($v807765384d9d5527da8848df14a4f02f)) {
                 if ($v807765384d9d5527da8848df14a4f02f[0]) {
                     $v26b75b176d665f24a5fd22a2ad815763['create-link'] = $v807765384d9d5527da8848df14a4f02f[0];
                 }
                 if ($v807765384d9d5527da8848df14a4f02f[1]) {
                     $v26b75b176d665f24a5fd22a2ad815763['edit-link'] = $v807765384d9d5527da8848df14a4f02f[1];
                 }
             }
         }
     }
     if ($vb946c44d711ade3b061653732977d043 instanceof iUmiHierarchyType) {
         $v26b75b176d665f24a5fd22a2ad815763['basetype'] = $vb946c44d711ade3b061653732977d043;
     }
     $v26b75b176d665f24a5fd22a2ad815763['name'] = str_replace(array("<", ">"), array('&lt;', '&gt;'), $v8e2dcfd7e7e24b1ca76c1193f645902b->getName());
     if ($this->isFull == false) {
         $v26b75b176d665f24a5fd22a2ad815763['xlink:href'] = "upage://" . $v7552cd149af7495ee7d8225974e50f80;
         return $v26b75b176d665f24a5fd22a2ad815763;
     }
     $va8cfde6331bd59eb2ac96f8911c4b666 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObject();
     $v6301cee35ea764a1e241978f93f01069 = $va8cfde6331bd59eb2ac96f8911c4b666->getTypeId();
     $v726e8e4809d4c1b28a6549d86436a124 = $v0e8133eb006c0f85ed9444ae07a60842->getType($v6301cee35ea764a1e241978f93f01069);
     $v143fdbfa2afa490e521056bd5040d5fd = $v726e8e4809d4c1b28a6549d86436a124->getFieldsGroupsList();
     $v26b75b176d665f24a5fd22a2ad815763['properties'] = array('nodes:group' => array());
     $v865c0c0b4ab0e063e5caa3387c1a8741 = 0;
     foreach ($v143fdbfa2afa490e521056bd5040d5fd as $vdb0f6f37ebeb6ea09489124345af2a45) {
         $v03f2ce8694aef1464a97f254c78a26ae = translatorWrapper::get($vdb0f6f37ebeb6ea09489124345af2a45);
         $vb1a1a039830b9d5ddf71ccd5304e9e50 = $v03f2ce8694aef1464a97f254c78a26ae->translateProperties($vdb0f6f37ebeb6ea09489124345af2a45, $va8cfde6331bd59eb2ac96f8911c4b666);
         if (!empty($vb1a1a039830b9d5ddf71ccd5304e9e50)) {
             $v26b75b176d665f24a5fd22a2ad815763['properties']['nodes:group'][getRequest('jsonMode') == "force" ? $v865c0c0b4ab0e063e5caa3387c1a8741++ : ++$v865c0c0b4ab0e063e5caa3387c1a8741] = $vb1a1a039830b9d5ddf71ccd5304e9e50;
         }
     }
     return $v26b75b176d665f24a5fd22a2ad815763;
 }
Exemplo n.º 23
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();
     }
 }
Exemplo n.º 24
0
 public function placeOnPage()
 {
     $formId = getRequest('param0');
     if (!$formId) {
         $this->chooseRedirect(getServer('HTTP_REFERER'));
     }
     $form = umiObjectTypesCollection::getInstance()->getType($formId);
     $typeid = umiHierarchyTypesCollection::getInstance()->getTypeByName('webforms', 'page')->getId();
     $formName = $form->getName();
     $hierarchy = umiHierarchy::getInstance();
     $pageId = $hierarchy->addElement(0, $typeid, $formName, $formName);
     permissionsCollection::getInstance()->setDefaultPermissions($pageId);
     $page = $hierarchy->getElement($pageId);
     $page->setIsActive(true);
     $page->setValue('form_id', $formId);
     $page->setValue('title', $formName);
     $page->setValue('h1', $formName);
     $page->setValue('content', '%webforms add(' . $formId . ')%');
     $page->commit();
     $this->chooseRedirect('/admin/content/edit/' . $pageId . '/');
 }
Exemplo n.º 25
0
 public function loginza($template = 'default')
 {
     if (!empty($_POST['token'])) {
         $loginzaAPI = new loginzaAPI();
         $profile = $loginzaAPI->getAuthInfo($_POST['token']);
         if (!empty($profile)) {
             $profile = new loginzaUserProfile($profile);
             $objectTypes = umiObjectTypesCollection::getInstance();
             $objectTypeId = $objectTypes->getBaseType("users", "user");
             $objectType = $objectTypes->getType($objectTypeId);
             $nickname = $profile->genNickname();
             $provider = $profile->genProvider();
             $provider_url = parse_url($provider);
             $provider_name = str_ireplace('www.', '', $provider_url['host']);
             $login = $nickname . "@" . $provider_name;
             $password = $profile->genRandomPassword();
             $email = $profile->genUserEmail();
             $lname = $profile->getLname();
             $fname = $profile->getFname();
             if (!$fname) {
                 $fname = $nickname;
             }
             $sel = new selector('objects');
             $sel->types('object-type')->name('users', 'user');
             $sel->where('login')->equals($login);
             $sel->where('loginza')->equals($provider_name);
             $user = $sel->first;
             $from_page = getRequest("from_page");
             if ($user instanceof iUmiObject) {
                 permissionsCollection::getInstance()->loginAsUser($user);
                 session_commit();
                 $this->redirect($from_page ? $from_page : $this->pre_lang . '/users/auth/');
             }
             if (!preg_match("/.+@.+\\..+/", $email)) {
                 while (true) {
                     $email = $nickname . rand(1, 100) . "@" . getServer('HTTP_HOST');
                     if ($this->checkIsUniqueEmail($email)) {
                         break;
                     }
                 }
             }
             $object_id = umiObjectsCollection::getInstance()->addObject($login, $objectTypeId);
             $object = umiObjectsCollection::getInstance()->getObject($object_id);
             $object->setValue("login", $login);
             $object->setValue("password", md5($password));
             $object->setValue("e-mail", $email);
             $object->setValue("fname", $fname);
             $object->setValue("lname", $lname);
             $object->setValue("loginza", $provider_name);
             $object->setValue("is_activated", '1');
             $object->setValue("activate_code", md5(uniqid(rand(), true)));
             $_SESSION['cms_login'] = $login;
             $_SESSION['cms_pass'] = md5($password);
             $_SESSION['user_id'] = $object_id;
             session_commit();
             $group_id = regedit::getInstance()->getVal("//modules/users/def_group");
             $object->setValue("groups", array($group_id));
             $data_module = cmsController::getInstance()->getModule('data');
             $data_module->saveEditedObject($object_id, true);
             $object->commit();
             $this->redirect($from_page ? $from_page : $this->pre_lang . '/users/auth/');
         }
     }
     return $this->auth();
 }
Exemplo n.º 26
0
 protected function exportElement($v7057e8409c7c531a1a6e9ac3df4ed549)
 {
     umiHierarchy::getInstance()->clearCache();
     if (isset($this->exported_elements[$v7057e8409c7c531a1a6e9ac3df4ed549])) {
         return false;
     }
     if ($this->limit) {
         if ($this->position >= $this->limit) {
             $this->break = true;
             return false;
         }
     }
     $this->exported_elements[$v7057e8409c7c531a1a6e9ac3df4ed549] = 'found';
     $v8e2dcfd7e7e24b1ca76c1193f645902b = umiHierarchy::getInstance()->getElement($v7057e8409c7c531a1a6e9ac3df4ed549, true, true);
     if (!$v8e2dcfd7e7e24b1ca76c1193f645902b instanceof umiHierarchyElement) {
         return false;
     }
     $v94757cae63fd3e398c0811a976dd6bbe = $v8e2dcfd7e7e24b1ca76c1193f645902b->getObjectTypeId();
     if ($this->exportType($v94757cae63fd3e398c0811a976dd6bbe)) {
         if ($this->limit && $this->position >= $this->limit) {
             $this->break = true;
             return true;
         }
     }
     $v4a8a08f09d37b73795649038408b5f33 = $this->doc->createElement('page');
     $this->translateEntity($v8e2dcfd7e7e24b1ca76c1193f645902b, $v4a8a08f09d37b73795649038408b5f33);
     $v4a8a08f09d37b73795649038408b5f33->removeAttribute('update-time');
     $vf585b7f018bb4ced15a03683a733e50b = $v8e2dcfd7e7e24b1ca76c1193f645902b->getLangId();
     if (!$this->ignoreRelations || in_array('langs', $this->saveRelations)) {
         if ($this->exportLang($vf585b7f018bb4ced15a03683a733e50b)) {
             if ($this->limit && $this->position >= $this->limit) {
                 $this->break = true;
                 return true;
             }
         }
         $v392cdf2310e931972f2459edc1ea2ff2 = $this->relations->getOldLangIdRelation($this->source_id, $vf585b7f018bb4ced15a03683a733e50b);
     } else {
         $v392cdf2310e931972f2459edc1ea2ff2 = $this->relations->getOldLangIdRelation($this->source_id, $vf585b7f018bb4ced15a03683a733e50b);
         if ($v392cdf2310e931972f2459edc1ea2ff2 === false) {
             $this->relations->setLangIdRelation($this->source_id, $vf585b7f018bb4ced15a03683a733e50b, $vf585b7f018bb4ced15a03683a733e50b);
             $v392cdf2310e931972f2459edc1ea2ff2 = $vf585b7f018bb4ced15a03683a733e50b;
         }
     }
     $v4a8a08f09d37b73795649038408b5f33->setAttribute('lang-id', $v392cdf2310e931972f2459edc1ea2ff2);
     $v72ee76c5c29383b7c9f9225c1fa4d10b = $v8e2dcfd7e7e24b1ca76c1193f645902b->getDomainId();
     if (!$this->ignoreRelations || in_array('domains', $this->saveRelations)) {
         $vad5f82e879a9c5d6b5b442eb37e50551 = domainsCollection::getInstance()->getDomain($v72ee76c5c29383b7c9f9225c1fa4d10b);
         if ($this->exportDomain($vad5f82e879a9c5d6b5b442eb37e50551)) {
             if ($this->limit && $this->position >= $this->limit) {
                 $this->break = true;
                 return true;
             }
         }
         $v0bb5aff4a4154504d1117c453c35edd8 = $this->relations->getOldDomainIdRelation($this->source_id, $v72ee76c5c29383b7c9f9225c1fa4d10b);
     } else {
         $v0bb5aff4a4154504d1117c453c35edd8 = $this->relations->getOldDomainIdRelation($this->source_id, $v72ee76c5c29383b7c9f9225c1fa4d10b);
         if ($v0bb5aff4a4154504d1117c453c35edd8 === false) {
             $this->relations->setDomainIdRelation($this->source_id, $v72ee76c5c29383b7c9f9225c1fa4d10b, $v72ee76c5c29383b7c9f9225c1fa4d10b);
             $v0bb5aff4a4154504d1117c453c35edd8 = $v72ee76c5c29383b7c9f9225c1fa4d10b;
         }
     }
     $v4a8a08f09d37b73795649038408b5f33->setAttribute('domain-id', $v0bb5aff4a4154504d1117c453c35edd8);
     $vd02e12eb6d6c3f6ebd763197df01e211 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getTplId();
     if (!$this->ignoreRelations || in_array('templates', $this->saveRelations)) {
         if ($this->exportTemplate($vd02e12eb6d6c3f6ebd763197df01e211)) {
             if ($this->limit && $this->position >= $this->limit) {
                 $this->break = true;
                 return true;
             }
         }
         $vd01a3cac3018d018ad8bef5c05012c94 = $this->relations->getOldTemplateIdRelation($this->source_id, $vd02e12eb6d6c3f6ebd763197df01e211);
     } else {
         $vd01a3cac3018d018ad8bef5c05012c94 = $this->relations->getOldTemplateIdRelation($this->source_id, $vd02e12eb6d6c3f6ebd763197df01e211);
         if ($vd01a3cac3018d018ad8bef5c05012c94 === false) {
             $this->relations->setTemplateIdRelation($this->source_id, $vd02e12eb6d6c3f6ebd763197df01e211, $vd02e12eb6d6c3f6ebd763197df01e211);
             $vd01a3cac3018d018ad8bef5c05012c94 = $vd02e12eb6d6c3f6ebd763197df01e211;
         }
     }
     $vf9bdb7221804d6d17b654ec67c5a0735 = templatesCollection::getInstance()->getTemplate($vd02e12eb6d6c3f6ebd763197df01e211)->getFilename();
     $v557c9fc3c1f769c263ae2d3113ff1501 = $this->doc->createElement('template');
     $v557c9fc3c1f769c263ae2d3113ff1501->setAttribute("id", $vd01a3cac3018d018ad8bef5c05012c94);
     $v557c9fc3c1f769c263ae2d3113ff1501->appendChild($this->doc->createTextNode($vf9bdb7221804d6d17b654ec67c5a0735));
     $v4a8a08f09d37b73795649038408b5f33->appendChild($v557c9fc3c1f769c263ae2d3113ff1501);
     $v13fba93b98196f2395dec474c9ba27e5 = $this->relations->getOldIdRelation($this->source_id, $v7057e8409c7c531a1a6e9ac3df4ed549);
     if ($v13fba93b98196f2395dec474c9ba27e5 === false) {
         $this->relations->setIdRelation($this->source_id, $v7057e8409c7c531a1a6e9ac3df4ed549, $v7057e8409c7c531a1a6e9ac3df4ed549);
         $v13fba93b98196f2395dec474c9ba27e5 = $v7057e8409c7c531a1a6e9ac3df4ed549;
     } else {
         $v4a8a08f09d37b73795649038408b5f33->setAttribute('id', $v13fba93b98196f2395dec474c9ba27e5);
     }
     $v6be379826b20cc58475f636e33f4606b = $v8e2dcfd7e7e24b1ca76c1193f645902b->getParentId();
     if ($v6be379826b20cc58475f636e33f4606b) {
         $v65dce76bfdfbc3dfd9962e8d154dab64 = $this->relations->getOldIdRelation($this->source_id, $v6be379826b20cc58475f636e33f4606b);
         if ($v65dce76bfdfbc3dfd9962e8d154dab64 === false) {
             $this->relations->setIdRelation($this->source_id, $v6be379826b20cc58475f636e33f4606b, $v6be379826b20cc58475f636e33f4606b);
             $v65dce76bfdfbc3dfd9962e8d154dab64 = $v6be379826b20cc58475f636e33f4606b;
         }
         $v4a8a08f09d37b73795649038408b5f33->setAttribute('parentId', $v65dce76bfdfbc3dfd9962e8d154dab64);
     }
     $v3643b86326b2ffcc0a085b4dd3a4309b = new DOMXPath($this->doc);
     if ($v3643b86326b2ffcc0a085b4dd3a4309b->evaluate("basetype", $v4a8a08f09d37b73795649038408b5f33)->length) {
         $v593616de15330c0fb2d55e55410bf994 = $v3643b86326b2ffcc0a085b4dd3a4309b->evaluate("basetype", $v4a8a08f09d37b73795649038408b5f33)->item(0);
         $v593616de15330c0fb2d55e55410bf994->removeAttribute('id');
     }
     $va240be392fd0549ece5558553983d79b = $this->relations->getOldTypeIdRelation($this->source_id, $v94757cae63fd3e398c0811a976dd6bbe);
     $v4a8a08f09d37b73795649038408b5f33->setAttribute('type-id', $va240be392fd0549ece5558553983d79b);
     $vaf31437ce61345f416579830a98c91e5 = $v4a8a08f09d37b73795649038408b5f33->getAttribute('object-id');
     if (!$this->ignoreRelations || in_array('objects', $this->saveRelations)) {
         if ($this->exportObject($vaf31437ce61345f416579830a98c91e5)) {
             if ($this->limit && $this->position >= $this->limit) {
                 $this->break = true;
                 return true;
             }
         }
         $vdad7dfa79a52fb5c76dff4c6bc0ddfe4 = $this->relations->getOldObjectIdRelation($this->source_id, $vaf31437ce61345f416579830a98c91e5);
     } else {
         $vdad7dfa79a52fb5c76dff4c6bc0ddfe4 = $this->relations->getOldObjectIdRelation($this->source_id, $vaf31437ce61345f416579830a98c91e5);
         if ($vdad7dfa79a52fb5c76dff4c6bc0ddfe4 === false) {
             $this->relations->setObjectIdRelation($this->source_id, $vaf31437ce61345f416579830a98c91e5, $vaf31437ce61345f416579830a98c91e5);
             $vdad7dfa79a52fb5c76dff4c6bc0ddfe4 = $vaf31437ce61345f416579830a98c91e5;
         }
     }
     $v4a8a08f09d37b73795649038408b5f33->setAttribute('object-id', $vdad7dfa79a52fb5c76dff4c6bc0ddfe4);
     if ($v3643b86326b2ffcc0a085b4dd3a4309b->evaluate("properties/group", $v4a8a08f09d37b73795649038408b5f33)->length) {
         foreach ($v3643b86326b2ffcc0a085b4dd3a4309b->evaluate("properties/group", $v4a8a08f09d37b73795649038408b5f33) as $vdb0f6f37ebeb6ea09489124345af2a45) {
             if ($vdb0f6f37ebeb6ea09489124345af2a45->hasAttribute('id')) {
                 $vdb0f6f37ebeb6ea09489124345af2a45->removeAttribute('id');
             }
         }
     }
     $v1a13105b7e4eb5fb2e7c9515ac06aa48 = $v3643b86326b2ffcc0a085b4dd3a4309b->evaluate("properties/group/property", $v4a8a08f09d37b73795649038408b5f33);
     $v5df80bc8ce306a564d91fa6a4da3d95b = array();
     $vc639bc918ec583ce6a914b6bbb29095d = array();
     foreach ($v1a13105b7e4eb5fb2e7c9515ac06aa48 as $v06e3d36fa30cea095545139854ad1fb9) {
         $v3aabf39f2d943fa886d86dcbbee4d910 = intval($v06e3d36fa30cea095545139854ad1fb9->getAttribute('id'));
         $v528ca8fdf35a8b13b093b5786a22c0bf = $this->relations->getOldFieldName($this->source_id, $v94757cae63fd3e398c0811a976dd6bbe, $v3aabf39f2d943fa886d86dcbbee4d910);
         if ($v528ca8fdf35a8b13b093b5786a22c0bf) {
             $v06e3d36fa30cea095545139854ad1fb9->setAttribute('name', $v528ca8fdf35a8b13b093b5786a22c0bf);
         }
         $v519504d7d4beb745dac24ccfb6c1d7c9 = $v06e3d36fa30cea095545139854ad1fb9->getAttribute('type');
         if (!$this->ignoreRelations || in_array('fields_relations', $this->saveRelations)) {
             if ($v519504d7d4beb745dac24ccfb6c1d7c9 == 'relation') {
                 $v4b43b0aee35624cd95b910189b3dc231 = $this->doc->createElement('relation');
                 $v4b43b0aee35624cd95b910189b3dc231->setAttribute('page-id', $v13fba93b98196f2395dec474c9ba27e5);
                 $v4b43b0aee35624cd95b910189b3dc231->setAttribute('field-name', $v528ca8fdf35a8b13b093b5786a22c0bf);
                 if (!$this->exportRelation($v4b43b0aee35624cd95b910189b3dc231, $v06e3d36fa30cea095545139854ad1fb9)) {
                     return true;
                 }
                 $v5df80bc8ce306a564d91fa6a4da3d95b[] = $v4b43b0aee35624cd95b910189b3dc231;
             }
             if ($v519504d7d4beb745dac24ccfb6c1d7c9 == 'symlink') {
                 $v4b43b0aee35624cd95b910189b3dc231 = $this->doc->createElement('relation');
                 $v4b43b0aee35624cd95b910189b3dc231->setAttribute('page-id', $v13fba93b98196f2395dec474c9ba27e5);
                 $v4b43b0aee35624cd95b910189b3dc231->setAttribute('field-name', $v528ca8fdf35a8b13b093b5786a22c0bf);
                 if (!$this->exportRelation($v4b43b0aee35624cd95b910189b3dc231, $v06e3d36fa30cea095545139854ad1fb9)) {
                     return true;
                 }
                 $v5df80bc8ce306a564d91fa6a4da3d95b[] = $v4b43b0aee35624cd95b910189b3dc231;
             }
             if ($v519504d7d4beb745dac24ccfb6c1d7c9 == 'optioned') {
                 $ve1671797c52e15f763380b45e841ec32 = $this->doc->createElement('entity');
                 $ve1671797c52e15f763380b45e841ec32->setAttribute('page-id', $v13fba93b98196f2395dec474c9ba27e5);
                 $ve1671797c52e15f763380b45e841ec32->setAttribute('field-name', $v528ca8fdf35a8b13b093b5786a22c0bf);
                 if (!$this->exportOption($v06e3d36fa30cea095545139854ad1fb9, $ve1671797c52e15f763380b45e841ec32)) {
                     return true;
                 }
                 $vc639bc918ec583ce6a914b6bbb29095d[] = $ve1671797c52e15f763380b45e841ec32;
             }
         }
         if (!$this->ignoreRelations || in_array('files', $this->saveRelations)) {
             if ($v519504d7d4beb745dac24ccfb6c1d7c9 == 'file' || $v519504d7d4beb745dac24ccfb6c1d7c9 == 'swf_file' || $v519504d7d4beb745dac24ccfb6c1d7c9 == 'img_file') {
                 $v97fd815a3803a0588876bdd862014fed = $v06e3d36fa30cea095545139854ad1fb9->getElementsByTagName('value')->item(0)->nodeValue;
                 if (file_exists(CURRENT_WORKING_DIR . $v97fd815a3803a0588876bdd862014fed)) {
                     $v8c7dd922ad47494fc02c388e12c00eac = new umiFile(CURRENT_WORKING_DIR . $v97fd815a3803a0588876bdd862014fed);
                     $this->exportFile($v8c7dd922ad47494fc02c388e12c00eac);
                 } elseif (file_exists('./' . $v97fd815a3803a0588876bdd862014fed)) {
                     $v8c7dd922ad47494fc02c388e12c00eac = new umiFile('./' . $v97fd815a3803a0588876bdd862014fed);
                     $this->exportFile($v8c7dd922ad47494fc02c388e12c00eac);
                 }
             }
         }
     }
     $v9f5a2d64925838158f3ef0a206b58c00 = array();
     if (!$this->ignoreRelations || in_array('permissions', $this->saveRelations)) {
         $v41275a535677f79ff347e01bc530c176 = permissionsCollection::getInstance()->getRecordedPermissions($v7057e8409c7c531a1a6e9ac3df4ed549);
         if (is_array($v41275a535677f79ff347e01bc530c176)) {
             $v83878c91171338902e0fe0fb97a8c47a = $this->doc->createElement('permission');
             $v83878c91171338902e0fe0fb97a8c47a->setAttribute('page-id', $v13fba93b98196f2395dec474c9ba27e5);
             foreach ($v41275a535677f79ff347e01bc530c176 as $v3c6e0b8a9c15224a8228b9a98ca1531d => $v2063c1608d6e0baf80249c42e2be5804) {
                 $vd95679752134a2d9eb61dbd7b91c4bcc = $this->doc->createElement('owner');
                 if ($this->exportObject($v3c6e0b8a9c15224a8228b9a98ca1531d)) {
                     if ($this->limit && $this->position >= $this->limit) {
                         $this->break = true;
                         return true;
                     }
                 }
                 $v27742af9ed1c41ae081ab4e34d376042 = $this->relations->getOldObjectIdRelation($this->source_id, $v3c6e0b8a9c15224a8228b9a98ca1531d);
                 $vd95679752134a2d9eb61dbd7b91c4bcc->setAttribute('id', $v27742af9ed1c41ae081ab4e34d376042);
                 $vd95679752134a2d9eb61dbd7b91c4bcc->setAttribute('level', $v2063c1608d6e0baf80249c42e2be5804);
                 $v83878c91171338902e0fe0fb97a8c47a->appendChild($vd95679752134a2d9eb61dbd7b91c4bcc);
             }
             $v9f5a2d64925838158f3ef0a206b58c00[] = $v83878c91171338902e0fe0fb97a8c47a;
         }
     }
     foreach ($v5df80bc8ce306a564d91fa6a4da3d95b as $v4b43b0aee35624cd95b910189b3dc231) {
         $this->relations_container->appendChild($v4b43b0aee35624cd95b910189b3dc231);
     }
     foreach ($vc639bc918ec583ce6a914b6bbb29095d as $ve1671797c52e15f763380b45e841ec32) {
         $this->options_container->appendChild($ve1671797c52e15f763380b45e841ec32);
     }
     foreach ($v9f5a2d64925838158f3ef0a206b58c00 as $v83878c91171338902e0fe0fb97a8c47a) {
         $this->permissions_container->appendChild($v83878c91171338902e0fe0fb97a8c47a);
     }
     if (!$this->ignoreRelations || in_array('hierarchy', $this->saveRelations)) {
         $v8bef1cc20ada3bef55fdf132cb2a1cb9 = $v8e2dcfd7e7e24b1ca76c1193f645902b->getOrd();
         $v2510c39011c5be704182423e3a695e91 = $this->doc->createElement('relation');
         $v2510c39011c5be704182423e3a695e91->setAttribute('id', $v13fba93b98196f2395dec474c9ba27e5);
         $v2510c39011c5be704182423e3a695e91->setAttribute('ord', $v8bef1cc20ada3bef55fdf132cb2a1cb9);
         if ($v6be379826b20cc58475f636e33f4606b) {
             $v2510c39011c5be704182423e3a695e91->setAttribute('parent-id', $v65dce76bfdfbc3dfd9962e8d154dab64);
         } else {
             $v2510c39011c5be704182423e3a695e91->setAttribute('parent-id', 0);
         }
         $this->hierarchy_container->appendChild($v2510c39011c5be704182423e3a695e91);
     }
     $this->pages_container->appendChild($v4a8a08f09d37b73795649038408b5f33);
     $this->exported_elements[$v7057e8409c7c531a1a6e9ac3df4ed549] = $v13fba93b98196f2395dec474c9ba27e5;
     $this->position++;
     return true;
 }
Exemplo n.º 27
0
 /**
  * Получить текущую валюту
  * @return iUmiObject текущая валюта
  */
 public function getCurrentCurrency()
 {
     static $currency = null;
     if (!is_null($currency)) {
         return $currency;
     }
     if (permissionsCollection::getInstance()->isAuth()) {
         $customer = customer::get();
         if ($customer->preffered_currency) {
             $currencyTypeId = umiObjectTypesCollection::getInstance()->getBaseType('emarket', 'currency');
             $currency = selector::get('object')->id($customer->preffered_currency);
             if ($currency->typeId == $currencyTypeId) {
                 return $currency;
             }
         }
     } else {
         if ($v = (int) getCookie('customer_currency')) {
             return $currency = selector::get('object')->id($v);
         }
     }
     $guest = umiObjectsCollection::getInstance()->getObjectByGUID('system-guest');
     if ($v = $guest->getValue('preffered_currency')) {
         return $currency = selector::get('object')->id($v);
     }
     return $currency = $this->getDefaultCurrency();
 }
Exemplo n.º 28
0
 public static function getUser()
 {
     static $user = null;
     if ($user) {
         return $user;
     }
     $pool = ConnectionPool::getInstance();
     $connection = $pool->getConnection();
     umiEventFeedUser::setConnection($connection);
     umiEventFeedType::setConnection($connection);
     $userId = permissionsCollection::getInstance()->getUserId();
     try {
         $user = umiEventFeedUser::get($userId);
     } catch (Exception $e) {
         $user = umiEventFeedUser::create($userId);
         $settings = array();
         $user->setSettings($settings);
         $user->save();
     }
     return $user;
 }
Exemplo n.º 29
0
function macros_current_user_id()
{
    return permissionsCollection::getInstance()->getUserId();
}
Exemplo n.º 30
0
 public function auto()
 {
     $timeOut = (int) mainConfiguration::getInstance()->get("modules", "exchange.commerceML.timeout");
     if ($timeOut < 0) {
         $timeOut = 0;
     }
     sleep($timeOut);
     $buffer = outputBuffer::current('HTTPOutputBuffer');
     $buffer->charset('utf-8');
     $buffer->contentType('text/plain');
     $type = getRequest("type");
     $mode = getRequest("mode");
     $instance1c = getRequest('param0') ? md5(getRequest('param0')) . "/" : '';
     self::$importDirectory = "./sys-temp/1c_import/" . $instance1c;
     if (!permissionsCollection::getInstance()->isSv()) {
         $buffer->push("failure\nNot authorized as supervisor.");
         $buffer->end();
         exit;
     }
     switch ($type . "-" . $mode) {
         case "catalog-checkauth":
             // clear temp
             removeDirectory(self::$importDirectory);
         case "sale-checkauth":
             $buffer->push("success\nPHPSESSID\n" . session_id());
             break;
         case "catalog-init":
         case "sale-init":
             removeDirectory(self::$importDirectory);
             $maxFileSize = (int) mainConfiguration::getInstance()->get("modules", "exchange.commerceML.maxFileSize");
             if ($maxFileSize <= 0) {
                 $maxFileSize = 102400;
             }
             $buffer->push("zip=no\nfile_limit={$maxFileSize}");
             break;
         case "catalog-file":
             $buffer->push(self::saveIncomingFile());
             break;
         case "catalog-import":
             $buffer->push(self::importCommerceML());
             break;
         case "sale-query":
             $buffer->push(self::exportOrders());
             break;
         case "sale-success":
             $buffer->push(self::markExportedOrders());
             break;
         case "sale-file":
             $buffer->push(self::importOrders());
             break;
         default:
             $buffer->push("failure\nUnknown import type ({$type}) or mode ({$mode}).");
     }
     $buffer->end();
 }