%PDF- %PDF-
Direktori : /proc/self/root/home/bitrix/www/local/components/UB/user.profile/ |
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(); ?>