/** * Gets news with specified type. Uses paging. * * @param int $type Id of type (rubric) * @param int $limit Limit for output * @param int $page Current page for calculate offset * @return array */ public function getList($type, $limit, $page = 1) { $config = parse_ini_file("./config/config.ini", true); $page -= 1; $hierarchyTypeId = umiHierarchyTypesCollection::getInstance()->getTypeByName("news", "item")->getId(); $objectTypeId = umiObjectTypesCollection::getInstance()->getBaseType("news", "item"); $objectType = umiObjectTypesCollection::getInstance()->getType($objectTypeId); $publishTimeFieldId = $objectType->getFieldId('publish_time'); $publishToAppFieldId = $objectType->getFieldId('publish_to_app'); $sel = new umiSelection(); $sel->addElementType($hierarchyTypeId); $sel->addHierarchyFilter($type, 0, true); if ($config["umi"]["ignore-publish-flag"] != 1) { $sel->addPropertyFilterEqual($publishToAppFieldId, true); } $sel->setOrderByProperty($publishTimeFieldId, false); $sel->addLimit($limit, $page); $result = umiSelectionsParser::runSelection($sel); $items = array(); $size = sizeof($result); for ($i = 0; $i < $size; $i++) { $elementId = $result[$i]; $element = umiHierarchy::getInstance()->getElement($elementId); if (!$element) { continue; } $items[] = array("id" => $elementId, "header" => $element->getValue("h1"), "date" => $element->getValue("publish_time")->getFormattedDate("d.m.Y"), "image" => "http://" . $_SERVER['HTTP_HOST'] . $element->getValue("anons_pic"), "original_link" => "http://" . $_SERVER['HTTP_HOST'] . umiHierarchy::getInstance()->getPathById($elementId)); } return $items; }
public function count_users() { $typeId = umiObjectTypesCollection::getInstance()->getBaseType("users", "user"); $type = umiObjectTypesCollection::getInstance()->getType($typeId); $isActiveField = $type->getFieldId('is_activated'); $sel = new umiSelection(); $sel->addObjectType($typeId); $sel->addPropertyFilterEqual($isActiveField, true); return umiSelectionsParser::runSelectionCounts($sel); $total; }
public static function getSubscriberByUserId($v7ad6e70c936a7223ff2f1663258f4a0a) { $va5a928b6b6b19de8a18398c7b29f47d7 = false; $vf7b7708e49b5e697e01291fdbb169c31 = umiHierarchyTypesCollection::getInstance()->getTypeByName("dispatches", "subscriber")->getId(); $v3ec9f372b2dad35356b9884c89cf0ef2 = umiObjectTypesCollection::getInstance()->getTypeByHierarchyTypeId($vf7b7708e49b5e697e01291fdbb169c31); $vff500849b1c1163f66c899c7aec17813 = umiObjectTypesCollection::getInstance()->getType($v3ec9f372b2dad35356b9884c89cf0ef2); $v18ea1849dbf10a18b2dfd4ed0eb3a231 = new umiSelection(); $v18ea1849dbf10a18b2dfd4ed0eb3a231->setObjectTypeFilter(); $v18ea1849dbf10a18b2dfd4ed0eb3a231->addObjectType($v3ec9f372b2dad35356b9884c89cf0ef2); $v18ea1849dbf10a18b2dfd4ed0eb3a231->setPropertyFilter(); $v18ea1849dbf10a18b2dfd4ed0eb3a231->addPropertyFilterEqual($vff500849b1c1163f66c899c7aec17813->getFieldId('uid'), $v7ad6e70c936a7223ff2f1663258f4a0a); $v2cf58721416a170aa34368186d661d4b = umiSelectionsParser::runSelection($v18ea1849dbf10a18b2dfd4ed0eb3a231); if (is_array($v2cf58721416a170aa34368186d661d4b) && count($v2cf58721416a170aa34368186d661d4b)) { $va5a928b6b6b19de8a18398c7b29f47d7 = $v2cf58721416a170aa34368186d661d4b[0]; } else { $v5a459b4b428788e52383cf8fae051ef7 = umiObjectsCollection::getInstance()->getObject($v7ad6e70c936a7223ff2f1663258f4a0a); $vaddc9cff9d125716db26235ce1c09240 = $v5a459b4b428788e52383cf8fae051ef7->getValue("e-mail"); $v2430d439812ab308abec75d804810a30 = $v5a459b4b428788e52383cf8fae051ef7->getValue("lname"); $vd9c6a1a67112c4d88c9a572ac9cad3f5 = $v5a459b4b428788e52383cf8fae051ef7->getValue("fname"); $vaa876bbb2f0018ef7348fccc805794af = $v5a459b4b428788e52383cf8fae051ef7->getValue("father_name"); $vf572db796146381f0522cb8ba4a636e0 = $v5a459b4b428788e52383cf8fae051ef7->getValue("gender"); $vf7b7708e49b5e697e01291fdbb169c31 = umiHierarchyTypesCollection::getInstance()->getTypeByName("dispatches", "subscriber")->getId(); $v3ec9f372b2dad35356b9884c89cf0ef2 = umiObjectTypesCollection::getInstance()->getTypeByHierarchyTypeId($vf7b7708e49b5e697e01291fdbb169c31); $va5a928b6b6b19de8a18398c7b29f47d7 = umiObjectsCollection::getInstance()->addObject($vaddc9cff9d125716db26235ce1c09240, $v3ec9f372b2dad35356b9884c89cf0ef2); $vf674b89869b81fcedca2243c18bbcdd1 = umiObjectsCollection::getInstance()->getObject($va5a928b6b6b19de8a18398c7b29f47d7); if ($vf674b89869b81fcedca2243c18bbcdd1 instanceof umiObject) { $vf674b89869b81fcedca2243c18bbcdd1->setName($vaddc9cff9d125716db26235ce1c09240); $vf674b89869b81fcedca2243c18bbcdd1->setValue('lname', $v2430d439812ab308abec75d804810a30); $vf674b89869b81fcedca2243c18bbcdd1->setValue('fname', $vd9c6a1a67112c4d88c9a572ac9cad3f5); $vf674b89869b81fcedca2243c18bbcdd1->setValue('father_name', $vaa876bbb2f0018ef7348fccc805794af); $v61a9cd46c360819bab753cd29ccea4c4 = new umiDate(time()); $vf674b89869b81fcedca2243c18bbcdd1->setValue('subscribe_date', $v61a9cd46c360819bab753cd29ccea4c4); $vf674b89869b81fcedca2243c18bbcdd1->setValue('gender', $vf572db796146381f0522cb8ba4a636e0); $vf674b89869b81fcedca2243c18bbcdd1->setValue('uid', $v7ad6e70c936a7223ff2f1663258f4a0a); } $vf674b89869b81fcedca2243c18bbcdd1->commit(); } return $va5a928b6b6b19de8a18398c7b29f47d7; }
public function subscribers_list() { // input $iDispId = $_REQUEST['param0']; // set tab $this->sheets_set_active("subscribers_list"); //input: $this->load_forms(); $iCurrPage = (int) $_REQUEST['p']; $params = array(); // gen banners list $params['rows'] = ""; // $oSbsSelection = new umiSelection(); $oSbsSelection->setObjectTypeFilter(); $oSbsSelection->setLimitFilter(); $oSbsSelection->addLimit($this->per_page, $iCurrPage); $iHierarchyTypeId = umiHierarchyTypesCollection::getInstance()->getTypeByName("dispatches", "subscriber")->getId(); $iSbsTypeId = umiObjectTypesCollection::getInstance()->getTypeByHierarchyTypeId($iHierarchyTypeId); $oSbsType = umiObjectTypesCollection::getInstance()->getType($iSbsTypeId); $oSbsSelection->addObjectType($iSbsTypeId); // add curr dispatch filter if ($iDispId) { $oDispObj = umiObjectsCollection::getInstance()->getObject($iDispId); if ($oDispObj instanceof umiObject) { $oSbsSelection->setPropertyFilter(); $oSbsSelection->addPropertyFilterEqual($oSbsType->getFieldId('subscriber_dispatches'), $iDispId); } } $arrSelResults = umiSelectionsParser::runSelection($oSbsSelection); $iCountResults = umiSelectionsParser::runSelectionCounts($oSbsSelection); $iSbsNum = $this->per_page * $iCurrPage; for ($iI = 0; $iI < count($arrSelResults); $iI++) { $params['rows'] .= self::renderSubscriber($arrSelResults[$iI], ++$iSbsNum); } $params['pages'] = $this->generateNumPage($iCountResults, $this->per_page, $iCurrPage); return $this->parse_form("subscribers_list", $params); }
public function fill_release($dispatch_id = false, $ignore_redirect = false) { $iDispId = $dispatch_id ? $dispatch_id : getRequest('param0'); $oDispatch = umiObjectsCollection::getInstance()->getObject($iDispId); if ($oDispatch instanceof umiObject) { $iReleaseId = $this->getNewReleaseInstanceId($iDispId); $iNewsRelation = $oDispatch->getValue("news_relation"); $arrNewsLents = umiHierarchy::getInstance()->getObjectInstances($iNewsRelation, false, true); // get all releases $iHierarchyTypeId = umiHierarchyTypesCollection::getInstance()->getTypeByName("dispatches", "release")->getId(); $iReleaseTypeId = umiObjectTypesCollection::getInstance()->getTypeByHierarchyTypeId($iHierarchyTypeId); $oReleaseType = umiObjectTypesCollection::getInstance()->getType($iReleaseTypeId); $sel = new umiSelection(); $sel->setObjectTypeFilter(); $sel->addObjectType($iReleaseTypeId); $sel->setPropertyFilter(); $sel->addPropertyFilterEqual($oReleaseType->getFieldId('disp_reference'), $iDispId); $arrReleases = umiSelectionsParser::runSelection($sel); if (count($arrNewsLents)) { $iElementId = (int) $arrNewsLents[0]; $hierarchy_type_id = umiHierarchyTypesCollection::getInstance()->getTypeByName("news", "item")->getId(); $object_type_id = umiObjectTypesCollection::getInstance()->getBaseType("news", "item"); $object_type = umiObjectTypesCollection::getInstance()->getType($object_type_id); $publish_time_field_id = $object_type->getFieldId('publish_time'); $sel = new umiSelection(); $sel->setElementTypeFilter(); $sel->addElementType($hierarchy_type_id); $sel->setOrderFilter(); $sel->setOrderByProperty($publish_time_field_id, false); $sel->setHierarchyFilter(); $sel->addHierarchyFilter($iElementId, 0, true); $sel->setLimitFilter(); $sel->addLimit(50); $sel->setIsLangIgnored(true); /* $sel->setPropertyFilter(); $sel->addPropertyFilterBetween($publish_time_field_id, $date1, $date2); */ $result = umiSelectionsParser::runSelection($sel); for ($iI = 0; $iI < count($result); $iI++) { $iNextNewId = $result[$iI]; $oNextNew = umiHierarchy::getInstance()->getElement($iNextNewId); if ($oNextNew instanceof umiHierarchyElement) { $sName = $oNextNew->getName(); $sHeader = $oNextNew->getValue('h1'); $sShortBody = $oNextNew->getValue('anons'); $sBody = $oNextNew->getValue('content'); $oPubTime = $oNextNew->getValue('publish_time'); if (!strlen($sBody)) { $sBody = $sShortBody; } // add message $iHierarchyTypeId = umiHierarchyTypesCollection::getInstance()->getTypeByName("dispatches", "message")->getId(); $iMsgTypeId = umiObjectTypesCollection::getInstance()->getTypeByHierarchyTypeId($iHierarchyTypeId); $oMsgType = umiObjectTypesCollection::getInstance()->getType($iMsgTypeId); // check if new exists $oSel = new umiSelection(); $oSel->setObjectTypeFilter(); $oSel->addObjectType($iMsgTypeId); $oSel->setPropertyFilter(); $oSel->addPropertyFilterEqual($oMsgType->getFieldId('new_relation'), $iNextNewId); $oSel->setPropertyFilter(); $oSel->addPropertyFilterEqual($oMsgType->getFieldId('release_reference'), $arrReleases); $oSel->setLimitFilter(); $oSel->addLimit(1); $iCount = umiSelectionsParser::runSelectionCounts($oSel); if ($iCount > 0) { continue; } //add new message $iMsgObjId = umiObjectsCollection::getInstance()->addObject($sName, $iMsgTypeId); // try get object $oMsgObj = umiObjectsCollection::getInstance()->getObject($iMsgObjId); if ($oMsgObj instanceof umiObject) { $oMsgObj->setValue('release_reference', $iReleaseId); $oMsgObj->setValue('header', $sHeader); $oMsgObj->setValue('body', $sBody); $oMsgObj->setValue('short_body', $sShortBody); $oMsgObj->setValue('new_relation', array($iNextNewId)); if ($oPubTime instanceof umiDate) { $oMsgObj->setValue('msg_date', $oPubTime); } $oMsgObj->commit(); } } } } } // WTF? IE7 does not send the HTTP_REFERER header, so we should set the redirect string manually if (!$ignore_redirect) { $this->chooseRedirect('/admin/dispatches/edit/' . $iDispId . '/'); } }
public function tryPreAuth() { $v870fd5468174f846789cb0d56d95bed7 = ""; $v61b14997da4f52f41ee7b0d90f09e670 = ""; $ve218c54eefdbe103350435489a6595cb = ""; $v2b2dccfdbf6e767de8512d66da6d18ca = 'u-login'; $vad1ffbcb1d643a30a5f6cc9950526e81 = 'u-password'; $ve57492e1c3bb8975edf9399351741cf8 = 'u-password-md5'; $v0a7cb1c6ec211bc445c36725ebfb7bab = 'u-session-id'; $v50b6116b0f49a6cb34e310d17da0ccc4 = ini_get("session.name"); if ($v870fd5468174f846789cb0d56d95bed7 = getCookie($v2b2dccfdbf6e767de8512d66da6d18ca)) { if ($v61b14997da4f52f41ee7b0d90f09e670 = getCookie($vad1ffbcb1d643a30a5f6cc9950526e81)) { $v61b14997da4f52f41ee7b0d90f09e670 = md5($v61b14997da4f52f41ee7b0d90f09e670); } else { $v61b14997da4f52f41ee7b0d90f09e670 = getCookie($ve57492e1c3bb8975edf9399351741cf8); } } if (function_exists('apache_request_headers')) { $v47722c9511693b9a32d48982e48a7b9b = apache_request_headers(); if (isset($v47722c9511693b9a32d48982e48a7b9b[$v2b2dccfdbf6e767de8512d66da6d18ca])) { $v870fd5468174f846789cb0d56d95bed7 = umiObjectProperty::filterInputString(str_replace(chr(0), "", $v47722c9511693b9a32d48982e48a7b9b[$v2b2dccfdbf6e767de8512d66da6d18ca])); } if (isset($v47722c9511693b9a32d48982e48a7b9b[$ve57492e1c3bb8975edf9399351741cf8])) { $v61b14997da4f52f41ee7b0d90f09e670 = umiObjectProperty::filterInputString(str_replace(chr(0), "", $v47722c9511693b9a32d48982e48a7b9b[$ve57492e1c3bb8975edf9399351741cf8])); } elseif (isset($v47722c9511693b9a32d48982e48a7b9b[$vad1ffbcb1d643a30a5f6cc9950526e81])) { $v61b14997da4f52f41ee7b0d90f09e670 = md5(umiObjectProperty::filterInputString(str_replace(chr(0), "", $v47722c9511693b9a32d48982e48a7b9b[$vad1ffbcb1d643a30a5f6cc9950526e81]))); } if (isset($v47722c9511693b9a32d48982e48a7b9b[$v0a7cb1c6ec211bc445c36725ebfb7bab])) { $ve218c54eefdbe103350435489a6595cb = umiObjectProperty::filterInputString(str_replace(chr(0), "", $v47722c9511693b9a32d48982e48a7b9b[$v0a7cb1c6ec211bc445c36725ebfb7bab])); } } if (isset($_POST[$v2b2dccfdbf6e767de8512d66da6d18ca])) { $v870fd5468174f846789cb0d56d95bed7 = umiObjectProperty::filterInputString(str_replace(chr(0), "", $_POST[$v2b2dccfdbf6e767de8512d66da6d18ca])); } if (isset($_POST[$ve57492e1c3bb8975edf9399351741cf8])) { $v61b14997da4f52f41ee7b0d90f09e670 = umiObjectProperty::filterInputString(str_replace(chr(0), "", $_POST[$ve57492e1c3bb8975edf9399351741cf8])); } elseif (isset($_POST[$vad1ffbcb1d643a30a5f6cc9950526e81])) { $v61b14997da4f52f41ee7b0d90f09e670 = md5(umiObjectProperty::filterInputString(str_replace(chr(0), "", $_POST[$vad1ffbcb1d643a30a5f6cc9950526e81]))); } if (isset($_POST[$v0a7cb1c6ec211bc445c36725ebfb7bab])) { $ve218c54eefdbe103350435489a6595cb = umiObjectProperty::filterInputString(str_replace(chr(0), "", $_POST[$v0a7cb1c6ec211bc445c36725ebfb7bab])); } if (isset($_GET[$v2b2dccfdbf6e767de8512d66da6d18ca])) { $v870fd5468174f846789cb0d56d95bed7 = umiObjectProperty::filterInputString(str_replace(chr(0), "", $_GET[$v2b2dccfdbf6e767de8512d66da6d18ca])); } if (isset($_GET[$ve57492e1c3bb8975edf9399351741cf8])) { $v61b14997da4f52f41ee7b0d90f09e670 = umiObjectProperty::filterInputString(str_replace(chr(0), "", $_GET[$ve57492e1c3bb8975edf9399351741cf8])); } elseif (isset($_GET[$vad1ffbcb1d643a30a5f6cc9950526e81])) { $v61b14997da4f52f41ee7b0d90f09e670 = md5(umiObjectProperty::filterInputString(str_replace(chr(0), "", $_GET[$vad1ffbcb1d643a30a5f6cc9950526e81]))); } if (isset($_GET[$v0a7cb1c6ec211bc445c36725ebfb7bab])) { $ve218c54eefdbe103350435489a6595cb = umiObjectProperty::filterInputString(str_replace(chr(0), "", $_GET[$v0a7cb1c6ec211bc445c36725ebfb7bab])); } if (strlen($v870fd5468174f846789cb0d56d95bed7) && strlen($v61b14997da4f52f41ee7b0d90f09e670)) { $vf5b788937450a693e6cbec05d8b8b13f = umiObjectTypesCollection::getInstance()->getBaseType("users", "user"); $v8636cb7e3d45cd4e1e8e863d3286393e = umiObjectTypesCollection::getInstance()->getType($vf5b788937450a693e6cbec05d8b8b13f); $v8f671407d6df210b2670166a82e0fc1a = $v8636cb7e3d45cd4e1e8e863d3286393e->getFieldId("login"); $v98fc9fb0068cf0cdca3ce2e0cb0843d6 = $v8636cb7e3d45cd4e1e8e863d3286393e->getFieldId("password"); $v713d1619aba4eeb6679aec2b499e1b33 = $v8636cb7e3d45cd4e1e8e863d3286393e->getFieldId("is_activated"); $v8be74552df93e31bbdd6b36ed74bdb6a = new umiSelection(); $v8be74552df93e31bbdd6b36ed74bdb6a->setLimitFilter(); $v8be74552df93e31bbdd6b36ed74bdb6a->addLimit(1); $v8be74552df93e31bbdd6b36ed74bdb6a->setObjectTypeFilter(); $v8be74552df93e31bbdd6b36ed74bdb6a->addObjectType($vf5b788937450a693e6cbec05d8b8b13f); $v8be74552df93e31bbdd6b36ed74bdb6a->setPropertyFilter(); $v8be74552df93e31bbdd6b36ed74bdb6a->addPropertyFilterEqual($v8f671407d6df210b2670166a82e0fc1a, $v870fd5468174f846789cb0d56d95bed7); $v8be74552df93e31bbdd6b36ed74bdb6a->addPropertyFilterEqual($v98fc9fb0068cf0cdca3ce2e0cb0843d6, $v61b14997da4f52f41ee7b0d90f09e670); $v8be74552df93e31bbdd6b36ed74bdb6a->addPropertyFilterEqual($v713d1619aba4eeb6679aec2b499e1b33, 1); $result = umiSelectionsParser::runSelection($v8be74552df93e31bbdd6b36ed74bdb6a); if (sizeof($result) === 1) { $vbc8a7343779d62b3f0dc86f78848bde1 = intval($result[0]); if (!session_id()) { session_start(); } $vc87c62534434262e1d1c1348215684ef = session_id(); system_runSession(); if (strlen($vc87c62534434262e1d1c1348215684ef) && isset($_SESSION) && isset($_SESSION['cms_login']) && isset($_SESSION['cms_pass']) && isset($_SESSION['user_id']) && $_SESSION['cms_login'] === $v870fd5468174f846789cb0d56d95bed7 && $_SESSION['cms_pass'] === $v61b14997da4f52f41ee7b0d90f09e670 && $_SESSION['user_id'] === $vbc8a7343779d62b3f0dc86f78848bde1) { $_SESSION['starttime'] = time(); return self::PREAUTH_ALREADY; } if (strlen($ve218c54eefdbe103350435489a6595cb)) { if (strlen($vc87c62534434262e1d1c1348215684ef)) { session_destroy(); } session_id($ve218c54eefdbe103350435489a6595cb); session_start(); $_SESSION['starttime'] = time(); if (!(isset($_SESSION['cms_login']) && isset($_SESSION['cms_pass']) && isset($_SESSION['user_id']) && $_SESSION['cms_login'] === $v870fd5468174f846789cb0d56d95bed7 && $_SESSION['cms_pass'] === $v61b14997da4f52f41ee7b0d90f09e670 && $_SESSION['user_id'] === $vbc8a7343779d62b3f0dc86f78848bde1)) { session_destroy(); } else { $vd69634a59b2cc5df7d632e48474afc94 = new umiEventPoint("users_prelogin_successfull"); $vd69634a59b2cc5df7d632e48474afc94->setParam("prelogin_mode", self::PREAUTH_SUCCESS_RESTORE); $vd69634a59b2cc5df7d632e48474afc94->setParam("user_id", $vbc8a7343779d62b3f0dc86f78848bde1); umiEventsController::getInstance()->callEvent($vd69634a59b2cc5df7d632e48474afc94); return self::PREAUTH_SUCCESS_RESTORE; } } else { @session_start(); $_SESSION['cms_login'] = $v870fd5468174f846789cb0d56d95bed7; $_SESSION['cms_pass'] = $v61b14997da4f52f41ee7b0d90f09e670; $_SESSION['user_id'] = $vbc8a7343779d62b3f0dc86f78848bde1; $v41275a535677f79ff347e01bc530c176 = permissionsCollection::getInstance(); if ($v41275a535677f79ff347e01bc530c176->isSv($vbc8a7343779d62b3f0dc86f78848bde1)) { $_SESSION['user_is_sv'] = true; } session_commit(); session_start(); $_SESSION['starttime'] = time(); $vd69634a59b2cc5df7d632e48474afc94 = new umiEventPoint("users_prelogin_successfull"); $vd69634a59b2cc5df7d632e48474afc94->setParam("prelogin_mode", self::PREAUTH_SUCCESS_NEW); $vd69634a59b2cc5df7d632e48474afc94->setParam("user_id", $vbc8a7343779d62b3f0dc86f78848bde1); umiEventsController::getInstance()->callEvent($vd69634a59b2cc5df7d632e48474afc94); if (isset($_REQUEST['u-login-store']) && (intval($_REQUEST['u-login-store']) || strtoupper($_REQUEST['u-login-store']) === 'ON')) { setcookie($v2b2dccfdbf6e767de8512d66da6d18ca, $v870fd5468174f846789cb0d56d95bed7, time() + 60 * 60 * 24 * 31, "/"); setcookie($ve57492e1c3bb8975edf9399351741cf8, $v61b14997da4f52f41ee7b0d90f09e670, time() + 60 * 60 * 24 * 31, "/"); } return self::PREAUTH_SUCCESS_NEW; } } } return self::PREAUTH_INVALID; }
public function getGroupUsersCount($groupId = false) { $objectTypes = umiObjectTypesCollection::getInstance(); $userObjectTypeId = $objectTypes->getBaseType('users', 'user'); $userObjectType = $objectTypes->getType($userObjectTypeId); if ($userObjectType instanceof umiObjectType == false) { throw new publicException("Can't load user object type"); } $sel = new umiSelection(); $sel->addObjectType($userObjectTypeId); if ($groupId !== false) { if ($groupId != 0) { $sel->addPropertyFilterEqual($userObjectType->getFieldId('groups'), $groupId); } else { $sel->addPropertyFilterIsNull($userObjectType->getFieldId('groups')); } } return umiSelectionsParser::runSelectionCounts($sel); }
public function activate($template = "default") { if ($this->is_auth()) $this->redirect("/"); if(!$template) $template = "default"; list($template_block, $template_block_failed) = def_module::loadTemplates("users/register/".$template, "activate_block", "activate_block_failed"); $block_arr = Array(); $activate_code = (string) getRequest('param0'); if(!$activate_code || strlen($activate_code) != 32) { throw new publicException("%error_activation_code_failed%"); $template = $template_block_failed; } $typesCollection = umiObjectTypesCollection::getInstance(); $object_type_id = $typesCollection->getBaseType("users", "user"); $object_type = $typesCollection->getType($object_type_id); $childTypes = $typesCollection->getChildClasses($object_type_id); $activate_code_field_id = $object_type->getFieldId("activate_code"); $sel = new umiSelection; $sel->addLimit(1); $sel->addObjectType($object_type_id); $sel->addObjectType($childTypes); $sel->addPropertyFilterEqual($activate_code_field_id, $activate_code); $result = umiSelectionsParser::runSelection($sel); if($result) { list($user_id) = $result; $user = umiObjectsCollection::getInstance()->getObject($user_id); $user->setValue("is_activated", 1); $user->setValue("activate_code", md5(uniqid(rand(), true))); $user->commit(); permissionsCollection::getInstance()->loginAsUser($result); $oEventPoint = new umiEventPoint("users_activate"); $oEventPoint->setMode("after"); $oEventPoint->setParam("user_id", $user_id); $this->setEventPoint($oEventPoint); $template = $template_block; } else { throw new publicException("%error_activation_code_failed%"); $template = $template_block_failed; } return def_module::parseTemplate($template, $block_arr); }
public function getAllDispatches() { $oDispsSelection = new umiSelection(); $oDispsSelection->setObjectTypeFilter(); $iHierarchyTypeId = umiHierarchyTypesCollection::getInstance()->getTypeByName("dispatches", "dispatch")->getId(); $iDispTypeId = umiObjectTypesCollection::getInstance()->getTypeByHierarchyTypeId($iHierarchyTypeId); $oDispType = umiObjectTypesCollection::getInstance()->getType($iDispTypeId); $iActiveFldId = $oDispType->getFieldId('is_active'); $oDispsSelection->addPropertyFilterEqual($iActiveFldId, true, true); $oDispsSelection->addObjectType($iDispTypeId); return umiSelectionsParser::runSelection($oDispsSelection); }
public function post() { if (defined('CURRENT_VERSION_LINE') && CURRENT_VERSION_LINE == 'demo') { $url = getRequest('ref_onsuccess'); if (!$url) { $url = $this->pre_lang . "/webforms/posted/"; } $this->redirect($url); } global $_FILES; $iOldErrorReportingLevel = error_reporting(~E_ALL & ~E_STRICT); $res = ""; $email_to = getRequest('email_to'); $message = getRequest('message'); $data = getRequest('data'); $domain = getRequest('domain'); $subject = cmsController::getInstance()->getCurrentDomain()->getHost(); $referer_url = $_SERVER['HTTP_REFERER']; $this->errorRegisterFailPage($referer_url); // check captcha if (isset($_REQUEST['captcha'])) { $_SESSION['user_captcha'] = md5((int) $_REQUEST['captcha']); } if (!umiCaptcha::checkCaptcha()) { $this->errorNewMessage("%errors_wrong_captcha%"); $this->errorPanic(); } $sRecipientName = "administrator"; if (is_numeric($email_to)) { $to = $this->guessAddressValue($email_to); if (intval($to) != $email_to) { $sRecipientName = $this->guessAddressName($email_to); } else { $oTCollection = umiObjectTypesCollection::getInstance(); $iTypeId = $oTCollection->getBaseType('webforms', 'address'); $oType = $oTCollection->getType($iTypeId); $iFieldId = $oType->getFieldId('insert_id'); $oSelection = new umiSelection(); $oSelection->addObjectType($iTypeId); $oSelection->addPropertyFilterEqual($iFieldId, $email_to); $aIDs = umiSelectionsParser::runSelection($oSelection); if (count($aIDs)) { $oObject = umiObjectsCollection::getInstance()->getObject($aIDs[0]); $to = $oObject->getValue('address_list'); $sRecipientName = $oObject->getValue('address_description'); } else { if (!defined("DB_DRIVER") || DB_DRIVER != "xml") { $sql = "SELECT email, descr FROM cms_webforms WHERE id={$email_to}"; $result = l_mysql_query($sql); list($to, $sRecipientName) = mysql_fetch_row($result); } else { $this->redirect($this->pre_lang . "/webforms/posted/?template=error_no_recipient"); } } } } else { $this->checkAddressExistence($email_to); $to = $email_to; } if (!$data['email_from'] && isset($data['email'])) { $data['email_from'] = $data['email']; } $someMail = new umiMail(); $arrMails = explode(",", $to); $arrMails = array_map("trim", $arrMails); foreach ($arrMails as $sEmail) { $someMail->addRecipient($sEmail, $sRecipientName); } $from = $data['fname'] . " " . $data['lname']; $someMail->setFrom($data['email_from'], $from); $mess = ""; if (is_array($data)) { if (isset($data['subject'])) { $subject = $data['subject']; } if (isset($data['fio'])) { $from = $data['fio']; } if ($data['fname'] || $data['lname'] || $data['mname']) { $from = $data['lname'] . " " . $data['fname'] . " " . $data['mname']; } if ($data['fio_frm']) { $from = $data['fio_frm']; } if ($email_from = $data['email_from']) { $email_from = $data['email_from']; } $mess = <<<END <table border="0" width="100%"> END; if (is_array($_FILES['data']['name'])) { $data = array_merge($data, $_FILES['data']['name']); } $uploadDir = CURRENT_WORKING_DIR . "/sys-temp/uploads"; if (!is_dir($uploadDir)) { mkdir($uploadDir); } $max_size = getBytesFromString(mainConfiguration::getInstance()->get('system', 'quota-files-and-images')); if ($max_size != 0) { $summary_size = getBusyDiskSize(array('/images', '/files', '/sys-temp/uploads')); } foreach ($data as $field => $cont) { if ($filename = $_FILES['data']['name'][$field]) { if ($max_size == 0 || $summary_size + $_FILES['data']['size'][$field] <= $max_size) { $file = umiFile::upload('data', $field, $uploadDir); if (!$file) { $this->errorNewMessage("%errors_wrong_file_type%"); $this->errorPanic(); } $someMail->attachFile($file); $summary_size += $_FILES['data']['size'][$field]; } else { $cont = def_module::parseTPLMacroses("%not_enough_space_for_load_file%"); } } if (!is_array($cont)) { $cont = str_replace("%", "%", $cont); } if (!$cont) { $cont = "—"; } if (is_array($cont)) { foreach ($cont as $i => $v) { $cont[$i] = str_replace("%", "%", $v); } $cont = implode(", ", $cont); } $label = $_REQUEST['labels'][$field] ? $_REQUEST['labels'][$field] : "%" . $field . "%"; $mess .= <<<END \t<tr> \t\t<td width="30%"> \t\t\t{$label}: \t\t</td> \t\t<td> \t\t\t{$cont} \t\t</td> \t</tr> END; } $mess .= <<<END </table> <hr /> END; } if ($from) { $user_fio_from = $from; } $message = str_replace("%", "%", $message); $mess .= nl2br($message); if (!$from) { $from = regedit::getInstance()->getVal("//settings/fio_from"); } if (!$from_email) { $from_email = regedit::getInstance()->getVal("//settings/email_from"); } $from = $from . "<" . $from_email . ">"; $someMail->setSubject($subject); $someMail->setContent($mess); $someMail->commit(); $someMail->send(); if ($template = (string) $_REQUEST['template']) { //Sending auto-reply list($template_mail, $template_mail_subject) = def_module::loadTemplatesForMail("webforms/" . $template, "webforms_reply_mail", "webforms_reply_mail_subject"); $template_mail = def_module::parseTemplateForMail($template_mail, $arr); $template_mail_subject = def_module::parseTemplateForMail($template_mail, $arr); $check_param = false; if (!is_array($template_mail)) { if ((bool) strlen($template_mail)) { $check_param = true; } } if ($check_param) { $email_from = regedit::getInstance()->getVal("//settings/email_from"); $fio_from = regedit::getInstance()->getVal("//settings/fio_from"); $replyMail = new umiMail(); $replyMail->addRecipient($data['email_from'], $from); $replyMail->setFrom($email_from, $fio_from); $replyMail->setSubject($template_mail_subject); $replyMail->setContent($template_mail); $replyMail->commit(); $replyMail->send(); } } $oEventPoint = new umiEventPoint("webforms_post"); $oEventPoint->setMode("after"); $oEventPoint->setParam("email", $data['email_from']); $oEventPoint->setParam("fio", $user_fio_from); $this->setEventPoint($oEventPoint); $url = getRequest('ref_onsuccess'); if (!$url) { $url = $this->pre_lang . "/webforms/posted/"; } if ($template) { $url .= (strpos($url, '?') === false ? '?' : '&') . "template=" . $template; } error_reporting($iOldErrorReportingLevel); $this->redirect($url); }
/** * Применение кастомной логики к объекту umiSelection * * @param umiSelection $selection Объект umiSelection */ public function applyCustomCountFilters(&$selection) { $arCustomFilters = $this->customLogic->filters(); $oType = umiObjectTypesCollection::getInstance()->getType($this->objectsTypeId); if (!$oType) { return; } foreach ($arCustomFilters as $arCustomFilter) { $iFieldId = $oType->getFieldId($arCustomFilter[0]); $sOperator = $arCustomFilter[1]; $value = $arCustomFilter[2]; switch ($sOperator) { case "eq": $selection->addPropertyFilterEqual($iFieldId, $value); break; case "noteq": $selection->addPropertyFilterNotEqual($iFieldId, $value); break; case "null": $selection->addPropertyFilterIsNull($iFieldId); break; case "notnull": $selection->addPropertyFilterIsNotNull($iFieldId); break; case "gt": $selection->addPropertyFilterMore($iFieldId, $value); break; case "lt": $selection->addPropertyFilterLess($iFieldId, $value); break; case "like": $selection->addPropertyFilterLike($iFieldId, $value); break; } } }
public function getFilteredPages($v94757cae63fd3e398c0811a976dd6bbe, $vdfc394bd05a4b48161c790034af522a8, $v2063c1608d6e0baf80249c42e2be5804, $v9d85c254b5062e518a134a61950999c3 = 10, $v66f6181bcb4cff4cd38fbc804a036db6 = "default", $v126424c808da347218ba631a78feaf04 = false, $v3aabf39f2d943fa886d86dcbbee4d910 = false, $v375a52cb87b22005816fe7a418ec6660 = true) { $ve1ba980ce14a8c0d7e2779f895ab8695 = getRequest('p'); if ($v126424c808da347218ba631a78feaf04) { $ve1ba980ce14a8c0d7e2779f895ab8695 = 0; } list($v364f9b183bd2dd9e0beb45c754830a6c, $ve6a2fd7211958cfe50efa4d14bd332f5, $v28d65bb7a643774ada22f54ca0679289) = def_module::loadTemplates("filtered_pages/" . $v66f6181bcb4cff4cd38fbc804a036db6, "pages_block", "pages_block_line", "pages_block_empty"); $v599dcce2998a6b40b1e38e8c6006cb0a = umiObjectTypesCollection::getInstance()->getType($v94757cae63fd3e398c0811a976dd6bbe); if ($v599dcce2998a6b40b1e38e8c6006cb0a instanceof umiObjectType) { if ($vf8a30f899e9d691c760031d60ea0f3a2 = $v599dcce2998a6b40b1e38e8c6006cb0a->getFieldId($vdfc394bd05a4b48161c790034af522a8)) { $v8be74552df93e31bbdd6b36ed74bdb6a = new umiSelection(); $v8be74552df93e31bbdd6b36ed74bdb6a->forceHierarchyTable(true); $v8be74552df93e31bbdd6b36ed74bdb6a->addObjectType($v94757cae63fd3e398c0811a976dd6bbe); $v06e3d36fa30cea095545139854ad1fb9 = umiFieldsCollection::getInstance()->getField($vf8a30f899e9d691c760031d60ea0f3a2); if ($v051369818a8073bba5feeb0e957eb308 = $v06e3d36fa30cea095545139854ad1fb9->getGuideId()) { if (!is_numeric($v2063c1608d6e0baf80249c42e2be5804)) { $vd47c20d305d6a44856735d5fe5c086ca = umiObjectsCollection::getInstance()->getGuidedItems($v051369818a8073bba5feeb0e957eb308); $v2063c1608d6e0baf80249c42e2be5804 = array_search($v2063c1608d6e0baf80249c42e2be5804, $vd47c20d305d6a44856735d5fe5c086ca); } } $v8be74552df93e31bbdd6b36ed74bdb6a->addPropertyFilterEqual($vf8a30f899e9d691c760031d60ea0f3a2, $v2063c1608d6e0baf80249c42e2be5804); $v8be74552df93e31bbdd6b36ed74bdb6a->addPermissions(); $v8be74552df93e31bbdd6b36ed74bdb6a->addLimit($v9d85c254b5062e518a134a61950999c3, $ve1ba980ce14a8c0d7e2779f895ab8695); $v8be74552df93e31bbdd6b36ed74bdb6a->addActiveFilter(true); if ($v3aabf39f2d943fa886d86dcbbee4d910) { $v8be74552df93e31bbdd6b36ed74bdb6a->setOrderByProperty($v3aabf39f2d943fa886d86dcbbee4d910, $v375a52cb87b22005816fe7a418ec6660); } else { $v8be74552df93e31bbdd6b36ed74bdb6a->setOrderByObjectId($v375a52cb87b22005816fe7a418ec6660); } $result = umiSelectionsParser::runSelection($v8be74552df93e31bbdd6b36ed74bdb6a); $vfbb44b4487415b134bce9c790a27fe5e = umiSelectionsParser::runSelectionCounts($v8be74552df93e31bbdd6b36ed74bdb6a); $vfca1bff8ad8b3a8585abfb0ad523ba42 = array(); if ($vfbb44b4487415b134bce9c790a27fe5e > 0) { $v691d502cfd0e0626cd3b058e5682ad1c = array(); $v12a673c3eb40ea95d992c775443b8709 = umiHierarchy::getInstance(); foreach ($result as $v7057e8409c7c531a1a6e9ac3df4ed549) { $v8e2dcfd7e7e24b1ca76c1193f645902b = $v12a673c3eb40ea95d992c775443b8709->getElement($v7057e8409c7c531a1a6e9ac3df4ed549); if ($v8e2dcfd7e7e24b1ca76c1193f645902b instanceof umiHierarchyElement) { $v691d502cfd0e0626cd3b058e5682ad1c[] = def_module::parseTemplate($ve6a2fd7211958cfe50efa4d14bd332f5, array('attribute:id' => $v8e2dcfd7e7e24b1ca76c1193f645902b->id, 'attribute:link' => $v8e2dcfd7e7e24b1ca76c1193f645902b->link, 'node:name' => $v8e2dcfd7e7e24b1ca76c1193f645902b->name)); } } $vfca1bff8ad8b3a8585abfb0ad523ba42['subnodes:items'] = $v691d502cfd0e0626cd3b058e5682ad1c; $v66f6181bcb4cff4cd38fbc804a036db6 = $v364f9b183bd2dd9e0beb45c754830a6c; } else { $v66f6181bcb4cff4cd38fbc804a036db6 = $v28d65bb7a643774ada22f54ca0679289; } $vfca1bff8ad8b3a8585abfb0ad523ba42['total'] = $vfbb44b4487415b134bce9c790a27fe5e; $vfca1bff8ad8b3a8585abfb0ad523ba42['per_page'] = $v9d85c254b5062e518a134a61950999c3; return def_module::parseTemplate($v66f6181bcb4cff4cd38fbc804a036db6, $vfca1bff8ad8b3a8585abfb0ad523ba42); } else { throw new publicException("Type \"" . $v599dcce2998a6b40b1e38e8c6006cb0a->getName() . "\" doesn't have property \"{$vdfc394bd05a4b48161c790034af522a8}\""); } } else { throw new publicException("Wrong type id \"{$v94757cae63fd3e398c0811a976dd6bbe}\""); } }
/** * @desc Выводит список авторов блога * @param int $blogId Идентификатор блога * @param string $template имя файла шаблона * @return string|array */ public function viewBlogAuthors($blogId = false, $template = 'default') { static $bInited = false; static $sTemplateBlock = false; static $sTemplateLine = false; static $oPermissions = null; static $oObjects = null; static $iUserTypeId = 0; static $iGroupsFieldId = 0; $oObjects = umiObjectsCollection::getInstance(); $owner = $oObjects->getObjectIdByGUID('system-supervisor'); if (!$bInited) { list($sTemplateBlock, $sTemplateLine) = self::loadTemplates('blogs20/' . $template, 'blog_author_list_block', 'blog_author_list_line'); $oPermissions = permissionsCollection::getInstance(); $iUserTypeId = umiObjectTypesCollection::getInstance()->getBaseType('users', 'user'); $oUserType = umiObjectTypesCollection::getInstance()->getType($iUserTypeId); $iGroupsFieldId = $oUserType->getFieldId('groups'); $bInited = true; } $aResult = array(); $aXMLResult = array(); $aUsers = array(); $Select = false; $aOwners = $oPermissions->getUsersByElementPermissions($blogId, 2); $sel = new umiSelection(); $sel->addObjectType($iUserTypeId); foreach ($aOwners as $OwnerId) { if ($OwnerId == $oObjects->getObjectIdByGUID('users-users-15')) { continue; } $Owner = $oObjects->getObject($OwnerId); if ($Owner->getTypeId() == $iUserTypeId) { $aUsers[] = $OwnerId; } else { $Select = true; $sel->addPropertyFilterEqual($iGroupsFieldId, $OwnerId); } } if ($Select) { $r = umiSelectionsParser::runSelection($sel); $aUsers = array_merge($aUsers, $r); } if (!($blog = umiHierarchy::getInstance()->getElement($blogId))) { throw new publicException(getLabel('error-page-does-not-exist', null, $blogId)); } $owner = $blog->getObject()->getOwnerId(); $aUsers[] = $owner; if (empty($aUsers)) { return ''; } $aUsers = array_unique($aUsers); foreach ($aUsers as $userId) { $oUser = $oObjects->getObject($userId); if (!$oUser) { continue; } $aGroups = $oUser->getValue('groups'); //if(in_array(15, $aGroups)) continue; $aLine = array(); $aLine['attribute:user_id'] = $userId; $aLine['attribute:login'] = $oUser->getValue('login'); $aLine['attribute:fname'] = $oUser->getValue('fname'); $aLine['attribute:lname'] = $oUser->getValue('lname'); $name = $oUser->getValue('fname') . ' ' . $oUser->getValue('lname'); $login = $oUser->getName(); $aLine['attribute:name'] = strlen(trim($name)) ? $name : $login; if ($userId == $owner) { $aLine['attribute:is_owner'] = '1'; } $aResult[] = self::parseTemplate($sTemplateLine, $aLine); $aXMLResult[] = $aLine; } if (empty($aResult)) { return ''; } $lines = !empty($aResult) && !is_array($aResult[0]) ? implode(', ', $aResult) : ''; return self::parseTemplate($sTemplateBlock, array('void:lines' => $lines, 'subnodes:users' => $aXMLResult)); }
public function pages_mklist_by_tags($s_tags, $i_domain_id = NULL, $s_template = "tags", $i_per_page = false, $b_ignore_paging = false, $s_base_types = '') { /* */ // init and context : $s_tpl_pages = "pages"; $s_tpl_page = "page"; $s_tpl_pages_empty = "pages_empty"; // validate input : $i_per_page = intval($i_per_page); if (!$i_per_page) { $i_per_page = 10; } if ($i_per_page === -1) { $b_ignore_paging = true; } $s_template = strval($s_template); if (!strlen($s_template)) { $s_template = "tags"; } $i_curr_page = intval(getRequest('p')); if ($b_ignore_paging) { $i_curr_page = 0; } $s_base_types = strval($s_base_types); // load templates : list($tpl_pages, $tpl_page, $tpl_pages_empty) = def_module::loadTemplates("content/" . $s_template, $s_tpl_pages, $s_tpl_page, $s_tpl_pages_empty); // process : $o_sel = new umiSelection(); if ($i_domain_id) { $o_sel->setIsDomainIgnored(false); } else { $o_sel->setIsDomainIgnored(true); } if (strlen($s_base_types)) { $o_sel->setElementTypeFilter(); $arr_base_types = preg_split("/\\s+/is", $s_base_types); foreach ($arr_base_types as $s_next_type) { $arr_next_type = explode('.', $s_next_type); if (count($arr_next_type) === 2) { $o_hierarchy_type = umiHierarchyTypesCollection::getInstance()->getTypeByName($arr_next_type[0], $arr_next_type[1]); if ($o_hierarchy_type instanceof umiHierarchyType) { $i_hierarchy_type_id = $o_hierarchy_type->getId(); $o_sel->addElementType($i_hierarchy_type_id); } } } } $o_sel->forceHierarchyTable(); $o_object_type = umiObjectTypesCollection::getInstance()->getTypeByGUID('root-pages-type'); $i_tags_field_id = $o_object_type->getFieldId('tags'); $arr_tags = preg_split("/\\s*,\\s*/is", $s_tags); $o_sel->setPropertyFilter(); $o_sel->addPropertyFilterEqual($i_tags_field_id, $arr_tags); $o_sel->setPermissionsFilter(); $o_sel->addPermissions(); if ($i_per_page !== -1) { $o_sel->setLimitFilter(); $o_sel->addLimit($i_per_page, $i_curr_page); } $result = umiSelectionsParser::runSelection($o_sel); $total = umiSelectionsParser::runSelectionCounts($o_sel); $block_arr = array(); if (($sz = sizeof($result)) > 0) { $arr_items = array(); for ($i = 0; $i < $sz; $i++) { $line_arr = array(); $element_id = intval($result[$i]); $element = umiHierarchy::getInstance()->getElement($element_id); if (!$element) { continue; } $line_arr['attribute:id'] = $element_id; $line_arr['node:name'] = $element->getName(); $line_arr['attribute:link'] = umiHierarchy::getInstance()->getPathById($element_id); $line_arr['void:header'] = $lines_arr['name'] = $element->getName(); if ($publish_time = $element->getValue('publish_time')) { $line_arr['attribute:publish_time'] = $publish_time->getFormattedDate("U"); } $arr_items[] = def_module::parseTemplate($tpl_page, $line_arr, $element_id); umiHierarchy::getInstance()->unloadElement($element_id); } $block_arr['subnodes:items'] = $arr_items; $block_arr['tags'] = $s_tags; $block_arr['total'] = $total; $block_arr['per_page'] = $i_per_page; return def_module::parseTemplate($tpl_pages, $block_arr); } else { return def_module::parseTemplate($tpl_pages_empty, $block_arr); } }
public function fastInsert($placeName) { $sel = new umiSelection(); // type filter $sel->setObjectTypeFilter(); $hierarchyTypeId = umiHierarchyTypesCollection::getInstance()->getTypeByName("banners", "banner")->getId(); $objectTypeId = umiObjectTypesCollection::getInstance()->getTypeByHierarchyTypeId($hierarchyTypeId); $objectType = umiObjectTypesCollection::getInstance()->getType($objectTypeId); if (!$objectType) { return false; } $bannerTypes = umiObjectTypesCollection::getInstance()->getTypesByHierarchyTypeId($hierarchyTypeId); $sel->addObjectType(array_keys($bannerTypes)); $sel->addPropertyFilterEqual($objectType->getFieldId('place'), $this->getPlaceId($placeName)); $sel->setOrderByRand(); $result = umiSelectionsParser::runSelection($sel); $objects = umiObjectsCollection::getInstance(); foreach ($result as $bannerId) { $banner = $objects->getObject($bannerId); if (!$banner->is_active) { continue; } if ($this->checkIfValidParent($banner->view_pages, $banner->not_view_pages) == false) { continue; } if ($renderedBanner = $this->renderBanner($bannerId)) { return $renderedBanner; } } }
public function related_links($elementPath = false, $template = "default", $limit = 3) { list($template_block, $template_block_empty, $template_line) = def_module::loadTemplates("news/" . $template, "related_block", "related_block_empty", "related_line"); $element_id = $this->analyzeRequiredPath($elementPath); if ($element_id === false) { throw new publicException(getLabel('error-page-does-not-exist', null, $elementPath)); } $element = umiHierarchy::getInstance()->getElement($element_id); if (!$element) { return $template_block_empty; } $subjects = $element->getValue("subjects"); $hierarchy_type_id = umiHierarchyTypesCollection::getInstance()->getTypeByName("news", "item")->getId(); if (sizeof($subjects)) { $sel = new umiSelection(); $sel->addElementType($hierarchy_type_id); $subjects_field_id = $element->getFieldId('subjects'); $sel->addPropertyFilterEqual($subjects_field_id, $subjects); $sel->setOrderByProperty($element->getFieldId('publish_time'), false); $sel->addPermissions(); $sel->addLimit($limit + 1); $result = umiSelectionsParser::runSelection($sel); } else { $result = array(); } if (($sz = sizeof($result)) > 0) { $block_arr = array(); $lines = array(); $sz--; for ($i = 0; $i < $sz; $i++) { $line_arr = array(); $rel_element_id = $result[$i]; if ($rel_element_id == $element_id) { $sz++; continue; } $rel_element = umiHierarchy::getInstance()->getElement($rel_element_id); $line_arr['attribute:id'] = $rel_element_id; $line_arr['attribute:link'] = umiHierarchy::getInstance()->getPathById($rel_element_id); $line_arr['xlink:href'] = "upage://" . $rel_element_id; $line_arr['node:name'] = $rel_element->getName(); $lines[] = self::parseTemplate($template_line, $line_arr, $rel_element_id); } if (!$lines) { return ""; } $block_arr['subnodes:items'] = $block_arr['void:lines'] = $block_arr['void:related_links'] = $lines; return self::parseTemplate($template_block, $block_arr); } else { return $template_block_empty; } }
public function is_auth() { static $is_auth; if($is_auth === false || $is_auth === true) { return $is_auth; } $guest_id = umiObjectsCollection::getInstance()->getObjectIdByGUID('system-guest'); $user_id = getSession('user_id'); $login = getSession('cms_login'); $pass = getSession('cms_pass'); $this->user_login = "******"; $this->user_fullname = "%users_anonymous_fullname%"; if($user_id) { if($user_id == $guest_id) { $this->user_id = $user_id; return $is_auth = false; } else { $user = umiObjectsCollection::getInstance()->getObject($user_id); if($user instanceof umiObject) { if($pass != $user->getValue('password')) { unset($_SESSION['user_id']); $this->user_id = $guest_id; return $is_auth = false; } $login = $user->getValue('login'); $fname = $user->getValue('fname'); $lname = $user->getValue('lname'); $groups = $user->getValue('groups'); $this->groups = $groups; $this->user_id = $user_id; $this->user_login = $login; $this->user_fullname = "{$fname} {$lname}"; $this->updateUserLastRequestTime($user_id); system_runSession(); return $is_auth = true; } } } if($login && $pass) { $objectTypes = umiObjectTypesCollection::getInstance(); $object_type_id = $objectTypes->getBaseType("users", "user"); $object_type = $objectTypes->getType($object_type_id); $login_field_id = $object_type->getFieldId("login"); $password_field_id = $object_type->getFieldId("password"); $sel = new umiSelection; $sel->addLimit(1); $sel->addObjectType($objectTypes->getChildClasses($object_type_id)); $sel->addPropertyFilterEqual($login_field_id, $login); $sel->addPropertyFilterEqual($password_field_id, $pass); $result = umiSelectionsParser::runSelection($sel); } else { $result = Array(); } if(sizeof($result) == 1) { $user_id = $result[0]; $user_object = umiObjectsCollection::getInstance()->getObject($user_id); $login = $user_object->getValue("login"); $fname = $user_object->getValue("fname"); $lname = $user_object->getValue("lname"); $this->updateUserLastRequestTime($user_id); $groups = $user_object->getValue("groups"); $this->groups = $groups; $this->user_id = $user_id; $this->user_login = $login; $this->user_fullname = "{$fname} {$lname}"; $_SESSION['user_id'] = $user_id; system_runSession(); return $is_auth = true; } else { $this->user_id = $guest_id; $_SESSION['user_id'] = $guest_id; return $is_auth = false; } }
public function renderCurrencyChooser($v66f6181bcb4cff4cd38fbc804a036db6 = "default") { if (!$v66f6181bcb4cff4cd38fbc804a036db6) { $v66f6181bcb4cff4cd38fbc804a036db6 = "default"; } list($v33049bc9918b68289df6a5ec64f07f47) = def_module::loadTemplates("eshop/basket/" . $v66f6181bcb4cff4cd38fbc804a036db6, "currency_choose"); $v7f5cbfbf72c13c3428b35837dff582f8 = umiObjectTypesCollection::getInstance()->getBaseType("eshop", "currency"); $v4101a5fdf0ed40cbaf9bea2e125182cb = umiObjectTypesCollection::getInstance()->getType($v7f5cbfbf72c13c3428b35837dff582f8); $v01155f9f4e569970e4eef4e39fdbf559 = $v4101a5fdf0ed40cbaf9bea2e125182cb->getFieldId("use_in_eshop"); $v8be74552df93e31bbdd6b36ed74bdb6a = new umiSelection(); $v8be74552df93e31bbdd6b36ed74bdb6a->addObjectType($v7f5cbfbf72c13c3428b35837dff582f8); $v8be74552df93e31bbdd6b36ed74bdb6a->addPropertyFilterEqual($v01155f9f4e569970e4eef4e39fdbf559, true); $result = umiSelectionsParser::runSelection($v8be74552df93e31bbdd6b36ed74bdb6a); $vea963809ed3a54d0c863508f546b2bae = array("subnodes:currency_items" => ""); if (count($result) < 2) { return false; } foreach ($result as $vf82265ccceac13b2f40ccd9e81cbd263) { $vea963809ed3a54d0c863508f546b2bae['subnodes:currency_items'] .= $this->renderCurrencyItem($vf82265ccceac13b2f40ccd9e81cbd263); } return def_module::parseTemplate($v33049bc9918b68289df6a5ec64f07f47, $vea963809ed3a54d0c863508f546b2bae); }