本文整理汇总了PHP中BxDolForm::getDataItems方法的典型用法代码示例。如果您正苦于以下问题:PHP BxDolForm::getDataItems方法的具体用法?PHP BxDolForm::getDataItems怎么用?PHP BxDolForm::getDataItems使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BxDolForm
的用法示例。
在下文中一共展示了BxDolForm::getDataItems方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getAuthorAddon
function getAuthorAddon($aData, $oProfile)
{
$s = parent::getAuthorAddon($aData, $oProfile);
if (!$aData['cat']) {
return $s;
}
if (!($oCat = BxTemplCategory::getObjectInstance('bx_posts_cats'))) {
return $s;
}
if (!($aCats = BxDolForm::getDataItems('bx_posts_cats')) || !isset($aCats[$aData['cat']])) {
return $s;
}
$s = _t('_bx_posts_txt_category_link', $oCat->getCategoryUrl($aData['cat']), $aCats[$aData['cat']]) . '<br />' . $s;
return $s;
}
示例2: getCategoriesList
/**
* Get all categories list
* @param $bDisplayEmptyCats display categories with no items, true by default
* @return categories list html
*/
public function getCategoriesList($bDisplayEmptyCats = true)
{
$a = BxDolForm::getDataItems($this->_aObject['list_name']);
if (!$a) {
return '';
}
$aVars = array('bx_repeat:cats' => array());
foreach ($a as $sValue => $sName) {
if (!$sValue) {
continue;
}
$iNum = $this->getItemsNum($sValue);
if (!$bDisplayEmptyCats && !$iNum) {
continue;
}
$aVars['bx_repeat:cats'][] = array('url' => $this->getCategoryUrl($sValue), 'name' => $sName, 'value' => $sValue, 'num' => $iNum);
}
if (!$aVars['bx_repeat:cats']) {
return '';
}
return $this->_oTemplate->parseHtmlByName('category_list.html', $aVars);
}
示例3: performActionAdd
/**
* 'recheck' action handler
*/
public function performActionAdd()
{
bx_import('BxTemplFormView');
$aForm = array('form_attrs' => array('id' => 'bx_antispam_form_dnsbl_add', 'action' => BX_DOL_URL_ROOT . 'grid.php?o=bx_antispam_grid_dnsbl&a=add', 'method' => 'post'), 'params' => array('db' => array('table' => 'bx_antispam_dnsbl_rules', 'key' => 'id', 'submit_name' => 'do_submit')), 'inputs' => array('country' => array('type' => 'select', 'name' => 'country', 'caption' => _t('_bx_antispam_field_country'), 'values' => BxDolForm::getDataItems('Country')), 'chain' => array('type' => 'radio_set', 'name' => 'chain', 'caption' => _t('_bx_antispam_field_action'), 'values' => array('spammers' => _t('_bx_antispam_chain_spammers'), 'whitelist' => _t('_bx_antispam_chain_whitelist')), 'value' => 'spammers'), 'submit' => array('type' => 'input_set', 0 => array('type' => 'submit', 'name' => 'do_submit', 'value' => _t('_sys_submit')), 1 => array('type' => 'reset', 'name' => 'close', 'value' => _t('_sys_close'), 'attrs' => array('class' => 'bx-def-margin-sec-left', 'onclick' => '$(\'.bx-popup-applied:visible\').dolPopupHide();')))));
$oForm = new BxTemplFormView($aForm);
$oForm->initChecker();
if ($oForm->isSubmittedAndValid()) {
// if form is submitted and all fields are valid
$aCustomValues = array('chain' => $oForm->getCleanValue('chain'), 'zonedomain' => sprintf("%s.countries.nerd.dk.", strtolower($oForm->getCleanValue('country'))), 'postvresp' => '127.0.0.2', 'url' => 'http://countries.nerd.dk/', 'comment' => '_bx_antispam_rule_note_country', 'added' => time(), 'active' => 1);
$iRecentId = $oForm->insert($aCustomValues, true);
// insert new record
if ($iRecentId) {
$aRes = array('grid' => $this->getCode(false), 'blink' => $iRecentId);
} else {
$aRes = array('msg' => _t('_sys_txt_error_occured'));
}
// if record adding failed, display error message
$this->_echoResultJson($aRes, true);
} else {
// if form is not submitted or some fields are invalid, display popup with form
bx_import('BxTemplFunctions');
$s = BxTemplFunctions::getInstance()->popupBox($oForm->getId() . '_form', _t('_bx_antispam_popup_dnsbl_add'), $oForm->getCode() . '
<script>
$(document).ready(function () {
$("#' . $oForm->getId() . '").ajaxForm({
dataType: "json",
beforeSubmit: function (formData, jqForm, options) {
bx_loading($("#' . $oForm->getId() . '"), true);
},
success: function (data) {
$(".bx-popup-applied:visible").dolPopupHide();
glGrids.' . $this->_sObject . '.processJson(data, "add");
}
});
});
</script>');
$this->_echoResultJson(array('popup' => array('html' => $s, 'options' => array('closeOnOuterClick' => false))), true);
}
}
示例4: performActionDelete
public function performActionDelete()
{
$sAction = 'delete';
$iAffected = 0;
$aIds = bx_get('ids');
if (!$aIds || !is_array($aIds)) {
$this->_echoResultJson(array());
exit;
}
$oLanguage = BxDolStudioLanguagesUtils::getInstance();
$aList = array();
$this->oDb->getLists(array('type' => 'by_key', 'value' => $this->sList), $aList, false);
$aIdsAffected = array();
foreach ($aIds as $iId) {
$aValue = array();
$this->oDb->getValues(array('type' => 'by_id', 'value' => (int) $iId), $aValue);
if (!is_array($aValue) || empty($aValue)) {
continue;
}
if ((int) $this->_delete($iId) <= 0) {
continue;
}
$oLanguage->deleteLanguageString($aValue['lkey']);
$oLanguage->deleteLanguageString($aValue['lkey2']);
if ((int) $aList['use_for_sets'] != 1) {
$bUseInSets = 1;
$aValues = BxDolForm::getDataItems($this->sList);
foreach ($aValues as $mixedValue => $sTitle) {
if (!$this->canUseForSet($mixedValue)) {
$bUseInSets = 0;
break;
}
}
if ($bUseInSets == 1) {
$this->oDb->updateList($aList['id'], array('use_for_sets' => $bUseInSets));
}
}
$aIdsAffected[] = $iId;
$iAffected++;
}
$this->_echoResultJson($iAffected ? array('grid' => $this->getCode(false), 'blink' => $aIdsAffected) : array('msg' => _t('_adm_form_err_pre_values_delete')));
}
示例5: onSave
private function onSave(&$oForm)
{
$aList = array();
$this->oDb->getLists(array('type' => 'by_key', 'value' => $oForm->getCleanValue('Key')), $aList, false);
$iUseInSets = 1;
$aValues = BxDolForm::getDataItems($aList['key']);
foreach ($aValues as $mixedValue => $sTitle) {
if (!$this->canUseForSet($mixedValue)) {
$iUseInSets = 0;
break;
}
}
if ($iUseInSets != (int) $aList['use_for_sets']) {
$this->oDb->updateList($aList['id'], array('use_for_sets' => $iUseInSets));
}
}
示例6: actionValuesList
protected function actionValuesList()
{
if (($sList = bx_get('form_list')) === false) {
return array();
}
$sList = bx_process_input($sList);
$bUseForSets = (int) bx_get('form_use_for_sets') == 1;
bx_import('BxDolForm');
$aValues = BxDolForm::getDataItems(trim($sList, BX_DATA_LISTS_KEY_PREFIX . ' '), $bUseForSets);
$aTmplVars = array();
foreach ($aValues as $mixedValue => $sTitle) {
$aTmplVars[] = array('value' => $mixedValue, 'title' => $sTitle);
}
return array('content' => BxDolStudioTemplate::getInstance()->parseHtmlByName('forms_select.html', array('bx_repeat:options' => $aTmplVars)));
}
示例7: getFormEdit
protected function getFormEdit($sAction, $sObject)
{
$aForm = $this->aForm;
$aForm['form_attrs']['id'] = 'adm-form-field-edit-' . $this->aParams['display'];
$aForm['form_attrs']['action'] = BX_DOL_URL_ROOT . 'grid.php?o=' . $sObject . '&a=' . $sAction . '&object=' . $this->aParams['object'] . '&display=' . $this->aParams['display'] . '&di_id=' . (int) $this->aField['di_id'];
foreach ($aForm['inputs'] as $sKey => $aInput) {
if (!in_array($sKey, array('type_display', 'controls'))) {
switch ($sKey) {
case 'value':
$aForm['inputs'][$sKey]['value'] = $this->aField[$sKey];
if (in_array($aForm['inputs']['type']['value'], array('select', 'select_multiple', 'radio_set', 'checkbox_set'))) {
$sList = trim($this->getFieldValues($this->aField), BX_DATA_LISTS_KEY_PREFIX . ' ');
$bUseForSets = false;
if (in_array($aForm['inputs']['type']['value'], array('select_multiple', 'checkbox_set'))) {
$aList = array();
$this->oDb->getLists(array('type' => 'by_key', 'value' => $sList), $aList, false);
$bUseForSets = (int) $aList['use_for_sets'] == 1;
}
$aPreValues = BxDolForm::getDataItems($sList, $bUseForSets);
foreach ($aPreValues as $mixedValue => $sTitle) {
$aForm['inputs'][$sKey]['values'][] = array('key' => $mixedValue, 'value' => $sTitle);
}
}
break;
case 'values':
if (!empty($this->aField[$sKey])) {
$aForm['inputs'][$sKey]['value'] = $this->getFieldValues($this->aField);
}
if (in_array($aForm['inputs']['type']['value'], array('select', 'select_multiple', 'radio_set', 'checkbox_set'))) {
$aForm['inputs'][$sKey]['type'] = 'value';
foreach ($aForm['inputs'][$sKey]['values'] as $aValue) {
if ($aValue['key'] == $aForm['inputs'][$sKey]['value']) {
$aForm['inputs'][$sKey]['value'] = BxDolStudioTemplate::getInstance()->parseHtmlByName('bx_a.html', array('href' => BX_DOL_URL_STUDIO . 'builder_forms.php?page=pre_values&list=' . trim($aValue['key'], BX_DATA_LISTS_KEY_PREFIX . ' '), 'title' => _t('_adm_form_txt_field_values_manage'), 'bx_repeat:attrs' => array(), 'content' => $aValue['value']));
break;
}
}
unset($aForm['inputs'][$sKey]['values'], $aForm['inputs'][$sKey]['db']);
}
break;
case 'checked':
$aForm['inputs'][$sKey]['checked'] = (int) $this->aField[$sKey];
break;
case 'collapsed':
$aForm['inputs'][$sKey]['checked'] = (int) $this->aField[$sKey];
break;
case 'required':
$aForm['inputs'][$sKey]['checked'] = (int) $this->aField[$sKey];
if ($aForm['inputs'][$sKey]['checked'] == 1 && isset($aForm['inputs']['checker_func'])) {
unset($aForm['inputs']['checker_func']['tr_attrs']['style'], $aForm['inputs']['checker_error']['tr_attrs']['style']);
}
break;
case 'checker_func':
$aForm['inputs'][$sKey]['value'] = $this->aField[$sKey];
switch ($aForm['inputs'][$sKey]['value']) {
case 'length':
unset($aForm['inputs']['checker_params_length_min']['tr_attrs']['style'], $aForm['inputs']['checker_params_length_max']['tr_attrs']['style']);
break;
case 'preg':
unset($aForm['inputs']['checker_params_preg']['tr_attrs']['style']);
break;
}
break;
case 'checker_params_length_min':
$aParams = unserialize($this->aField['checker_params']);
$aForm['inputs'][$sKey]['value'] = isset($aParams['min']) ? (int) $aParams['min'] : 0;
break;
case 'checker_params_length_max':
$aParams = unserialize($this->aField['checker_params']);
$aForm['inputs'][$sKey]['value'] = isset($aParams['max']) ? (int) $aParams['max'] : 0;
break;
case 'checker_params_preg':
$aParams = unserialize($this->aField['checker_params']);
$aForm['inputs'][$sKey]['value'] = isset($aParams['preg']) ? $aParams['preg'] : '';
break;
case 'attrs_min':
$aParams = unserialize($this->aField['attrs']);
$aForm['inputs'][$sKey]['value'] = isset($aParams['min']) ? (int) $aParams['min'] : 0;
break;
case 'attrs_max':
$aParams = unserialize($this->aField['attrs']);
$aForm['inputs'][$sKey]['value'] = isset($aParams['max']) ? (int) $aParams['max'] : 100;
break;
case 'attrs_step':
$aParams = unserialize($this->aField['attrs']);
$aForm['inputs'][$sKey]['value'] = isset($aParams['step']) ? (int) $aParams['step'] : 1;
break;
case 'attrs_src':
$aParams = unserialize($this->aField['attrs']);
$aForm['inputs'][$sKey]['value'] = isset($aParams['src']) ? $aParams['src'] : '';
break;
default:
$aForm['inputs'][$sKey]['value'] = $this->aField[$sKey];
}
}
}
if (array_key_exists($aForm['inputs']['type']['value'], $this->aTypesRelated)) {
$aForm['inputs']['type'] = $this->getFieldTypesSelector('type', $aForm['inputs']['type']['value'], true);
unset($aForm['inputs']['type_display']);
}
$aForm['inputs']['controls'][0]['value'] = _t('_adm_form_btn_field_save');
//.........这里部分代码省略.........