예제 #1
0
<?php

if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) {
    die;
}
define('NO_KEEP_STATISTIC', 'Y');
define('NO_AGENT_STATISTIC', 'Y');
define('NO_AGENT_CHECK', true);
define('DisableEventsCheck', true);
$GLOBALS['APPLICATION']->RestartBuffer();
Header('Content-Type: application/x-javascript; charset=' . LANG_CHARSET);
$selectedEntityType = $arResult['SELECTED_ENTITY_TYPE'];
$entityData =& $arResult['ENTITY_DATA'];
$entityDatum = isset($entityData[$selectedEntityType]) ? $entityData[$selectedEntityType] : array();
$models = array();
if ($selectedEntityType === CCrmOwnerType::CompanyName) {
    foreach ($entityDatum['ITEMS'] as &$item) {
        $models[] = CCrmMobileHelper::PrepareCompanyData($item);
    }
    unset($item);
} elseif ($selectedEntityType === CCrmOwnerType::ContactName) {
    foreach ($entityDatum['ITEMS'] as &$item) {
        $models[] = CCrmMobileHelper::PrepareContactData($item);
    }
    unset($item);
}
echo CUtil::PhpToJSObject(array('DATA' => array('MODELS' => $models, 'NEXT_PAGE_URL' => $entityDatum['NAVIGATION']['NEXT_PAGE_URL'])));
die;
예제 #2
0
    if ($successed) {
        //$DB->Commit();
        __CrmMobileContactEditEndResonse(array('DELETED_ENTITY_ID' => $ID));
    } else {
        //$DB->Rollback();
        __CrmMobileContactEditEndResonse(array('ERROR' => GetMessage('CRM_CONTACT_COULD_NOT_DELETE')));
    }
} elseif ($action === 'GET_ENTITY') {
    __IncludeLang(dirname(__FILE__) . '/lang/' . LANGUAGE_ID . '/' . basename(__FILE__));
    $typeName = isset($_REQUEST['ENTITY_TYPE_NAME']) ? $_REQUEST['ENTITY_TYPE_NAME'] : '';
    if ($typeName !== 'CONTACT') {
        __CrmMobileContactEditEndResonse(array('ERROR' => GetMessage('CRM_ENTITY_TYPE_NOT_SUPPORTED', array('#ENTITY_TYPE#' => $typeName))));
    }
    $ID = isset($_REQUEST['ENTITY_ID']) ? intval($_REQUEST['ENTITY_ID']) : 0;
    if ($ID <= 0) {
        __CrmMobileContactEditEndResonse(array('ERROR' => GetMessage('CRM_ENTITY_ID_NOT_FOUND')));
    }
    if (!CCrmContact::CheckReadPermission($ID)) {
        __CrmMobileContactEditEndResonse(array('ERROR' => GetMessage('CRM_ACCESS_DENIED')));
    }
    $dbRes = CCrmContact::GetListEx(array(), array('=ID' => $ID, 'CHECK_PERMISSIONS' => 'N'));
    $item = $dbRes ? $dbRes->GetNext() : null;
    if (!is_array($item)) {
        __CrmMobileContactEditEndResonse(array('ERROR' => GetMessage('CRM_CONTACT_NOT_FOUND', array('#ID#' => $ID))));
    }
    $formatParams = isset($_REQUEST['FORMAT_PARAMS']) ? $_REQUEST['FORMAT_PARAMS'] : array();
    CCrmMobileHelper::PrepareContactItem($item, $formatParams);
    __CrmMobileContactEditEndResonse(array('ENTITY' => CCrmMobileHelper::PrepareContactData($item)));
} else {
    __CrmMobileContactEditEndResonse(array('ERROR' => 'Action is not supported in current context.'));
}
예제 #3
0
    ?>
"><ul class="crm_list_tel_list"<?php 
    echo $typeName !== $selectedEntityType ? ' style="display:none;"' : '';
    ?>
><?php 
    foreach ($data['ITEMS'] as &$item) {
        ?>
<li class="crm_list_tel">
			<input type="hidden" class="crm_entity_info" value="<?php 
        echo $item['ID'];
        ?>
" />
			<div class="crm_contactlist_tel_info crm_arrow"><?php 
        if ($typeName === CCrmOwnerType::ContactName) {
            $data['BUTTON_ID'] = $contactViewButtonID;
            $dataItem = $data['DISPATCHER_DATA'][] = CCrmMobileHelper::PrepareContactData($item);
            ?>
<img src="<?php 
            echo htmlspecialcharsbx($dataItem['LIST_IMAGE_URL']);
            ?>
" alt=""/>
				<strong><?php 
            echo $item['FORMATTED_NAME'];
            ?>
</strong>
				<span><?php 
            echo htmlspecialcharsbx($dataItem['LEGEND']);
            ?>
</span><?php 
        } elseif ($typeName === CCrmOwnerType::CompanyName) {
            $data['BUTTON_ID'] = $companyViewButtonID;
예제 #4
0
/*
 * ONLY 'POST' METHOD SUPPORTED
 * SUPPORTED ACTIONS:
 * 'GET_BY_ID' - get deal by ID
 */
global $DB, $APPLICATION;
CUtil::JSPostUnescape();
$GLOBALS['APPLICATION']->RestartBuffer();
Header('Content-Type: application/x-javascript; charset=' . LANG_CHARSET);
$CCrmDeal = new CCrmDeal();
if ($CCrmDeal->cPerms->HavePerm('CONTACT', BX_CRM_PERM_NONE, 'READ')) {
    echo CUtil::PhpToJSObject(array('ERROR' => 'Access denied!'));
    die;
}
$action = isset($_POST['ACTION']) ? $_POST['ACTION'] : '';
if (strlen($action) == 0) {
    echo CUtil::PhpToJSObject(array('ERROR' => 'Invalid data!'));
    die;
}
if ($action == 'GET_ENTITY') {
    $ID = isset($_POST['ENTITY_ID']) ? intval($_POST['ENTITY_ID']) : 0;
    if ($ID <= 0) {
        echo CUtil::PhpToJSObject(array('ERROR' => 'Invalid parameters!'));
        die;
    }
    $dbFields = CCrmContact::GetListEx(array(), array('ID' => $ID));
    $item = $obFields->GetNext();
    $formatParams = isset($_POST['FORMAT_PARAMS']) ? $_POST['FORMAT_PARAMS'] : array();
    CCrmMobileHelper::PrepareContactItem($item, $formatParams);
    echo CUtil::PhpToJSObject(array('DATA' => array('ENTITY' => CCrmMobileHelper::PrepareContactData($item))));
}
예제 #5
0
<?php

if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) {
    die;
}
global $APPLICATION;
$APPLICATION->AddHeadString('<script type="text/javascript" src="' . CUtil::GetAdditionalFileURL(SITE_TEMPLATE_PATH . '/crm_mobile.js') . '"></script>', true, \Bitrix\Main\Page\AssetLocation::AFTER_JS_KERNEL);
$APPLICATION->SetPageProperty('BodyClass', 'crm-page');
$UID = $arResult['UID'];
$mode = $arResult['MODE'];
$prefix = htmlspecialcharsbx($UID);
$entityID = $arResult['ENTITY_ID'];
$entity = $arResult['ENTITY'];
$dataItem = CCrmMobileHelper::PrepareContactData($entity);
$multiFieldTypeInfos = CCrmFieldMulti::GetEntityTypes();
$multiFieldTypeSettings = array();
foreach ($multiFieldTypeInfos as $multiFieldTypeID => &$multiFieldTypeInfo) {
    $multiFieldTypeSettings[$multiFieldTypeID] = array();
    foreach ($multiFieldTypeInfo as $multiFieldValueTypeID => &$multiFieldValueTypeInfo) {
        $multiFieldTypeSettings[$multiFieldTypeID][$multiFieldValueTypeID] = isset($multiFieldValueTypeInfo['ABBR']) ? $multiFieldValueTypeInfo['ABBR'] : $multiFieldValueTypeID;
    }
    unset($multiFieldValueTypeInfo);
}
unset($multiFieldTypeInfo);
$formTitle = GetMessage("M_CRM_CONTACT_EDIT_{$mode}_TITLE");
if (!function_exists('__CrmMobileContactEditRenderMultiFields')) {
    function __CrmMobileContactEditRenderMultiFields($typeName, &$fields, &$typeInfos, $prefix = '')
    {
        $typeName = strtoupper($typeName);
        $data = isset($fields[$typeName]) ? $fields[$typeName] : array();
        if ($prefix !== '') {
예제 #6
0
    echo htmlspecialcharsbx($searchTitle);
    ?>
			<span class="crm_arrow_bottom"></span>
		</div>
	</div>
<?php 
}
?>

<div id="<?php 
echo htmlspecialcharsbx($UID);
?>
"><ul class="crm_contact_list"><?php 
$currentClassifier = null;
foreach ($arResult['ITEMS'] as &$item) {
    $dispatcherDataItem = CCrmMobileHelper::PrepareContactData($item);
    $classifier = $item['CLASSIFIER'];
    if ($currentClassifier === null || $currentClassifier !== $classifier) {
        if ($currentClassifier !== null) {
            ?>
</ul></li><?php 
        }
        $currentClassifier = $classifier;
        ?>
<li class="crm_contact_list_separator">
			<input type="hidden" class="crm_entity_classifier" value="<?php 
        echo $classifier;
        ?>
" />
			<span><?php 
        echo $classifier;