本文整理汇总了PHP中cmsUser::getPermissionValue方法的典型用法代码示例。如果您正苦于以下问题:PHP cmsUser::getPermissionValue方法的具体用法?PHP cmsUser::getPermissionValue怎么用?PHP cmsUser::getPermissionValue使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cmsUser
的用法示例。
在下文中一共展示了cmsUser::getPermissionValue方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: html_button
?>
<?php
echo html_button(LANG_SEND, 'submit', 'icms.comments.submit()');
?>
</div>
<div class="loading">
<?php
echo LANG_LOADING;
?>
</div>
</form>
<?php
} else {
?>
<p><?php
printf(LANG_COMMENTS_LOW_KARMA, cmsUser::getPermissionValue('comments', 'karma'));
?>
</p>
<?php
}
?>
</div>
<?php
}
?>
<script>
<?php
echo $this->getLangJS('LANG_SEND', 'LANG_SAVE', 'LANG_COMMENT_DELETED', 'LANG_COMMENT_DELETE_CONFIRM');
?>
<?php
示例2: getItemForm
//.........这里部分代码省略.........
$form->addField($fieldset_id, new fieldString('slug', array('prefix' => '/' . $ctype['name'] . '/', 'suffix' => '.html', 'rules' => $slug_field_rules)));
}
// Если разрешено управление видимостью, то добавляем поле
if (cmsUser::isAllowed($ctype['name'], 'privacy')) {
$fieldset_id = $form->addFieldset(LANG_PRIVACY);
$form->addField($fieldset_id, new fieldList('is_private', array('items' => array(0 => LANG_PRIVACY_PUBLIC, 1 => LANG_PRIVACY_PRIVATE), 'rules' => array(array('number')))));
}
// если разрешено отключать комментарии к записи
if (cmsUser::isAllowed($ctype['name'], 'disable_comments') && $ctype['is_comments']) {
$fieldset_id = $form->addFieldset(LANG_RULE_CONTENT_COMMENT, 'is_comment');
$form->addField($fieldset_id, new fieldList('is_comments_on', array('default' => 1, 'items' => array(1 => LANG_YES, 0 => LANG_NO))));
}
//
// Если ручной ввод ключевых слов или описания, то добавляем поля для этого
//
if (!empty($ctype['options']['is_manual_title']) || !$ctype['is_auto_keys'] || !$ctype['is_auto_desc']) {
$fieldset_id = $form->addFieldset(LANG_SEO);
if ($ctype['options']['is_manual_title']) {
$form->addField($fieldset_id, new fieldString('seo_title', array('title' => LANG_SEO_TITLE, 'rules' => array(array('max_length', 256)))));
}
if (!$ctype['is_auto_keys']) {
$form->addField($fieldset_id, new fieldString('seo_keys', array('title' => LANG_SEO_KEYS, 'hint' => LANG_SEO_KEYS_HINT, 'rules' => array(array('max_length', 256)))));
}
if (!$ctype['is_auto_desc']) {
$form->addField($fieldset_id, new fieldText('seo_desc', array('title' => LANG_SEO_DESC, 'hint' => LANG_SEO_DESC_HINT, 'rules' => array(array('max_length', 256)))));
}
}
//
// Если включен выбор даты публикации, то добавляем поля
//
$pub_fieldset_id = false;
$is_dates = $ctype['is_date_range'];
$is_pub_start_date = cmsUser::isAllowed($ctype['name'], 'pub_late');
$is_pub_end_date = cmsUser::isAllowed($ctype['name'], 'pub_long', 'any');
$is_pub_end_days = cmsUser::isAllowed($ctype['name'], 'pub_long', 'days');
$is_pub_control = cmsUser::isAllowed($ctype['name'], 'pub_on');
$is_pub_ext = cmsUser::isAllowed($ctype['name'], 'pub_max_ext');
$pub_max_days = intval(cmsUser::getPermissionValue($ctype['name'], 'pub_max_days'));
if ($user->is_admin) {
$is_pub_end_days = false;
}
if ($is_pub_control) {
$pub_fieldset_id = $pub_fieldset_id ? $pub_fieldset_id : $form->addFieldset(LANG_CONTENT_PUB);
$form->addField($pub_fieldset_id, new fieldList('is_pub', array('title' => sprintf(LANG_CONTENT_IS_PUB, $ctype['labels']['create']), 'default' => 1, 'items' => array(1 => LANG_YES, 0 => LANG_NO))));
}
if ($is_dates) {
if ($is_pub_start_date) {
$pub_fieldset_id = $pub_fieldset_id ? $pub_fieldset_id : $form->addFieldset(LANG_CONTENT_PUB);
$m = date('i');
$form->addField($pub_fieldset_id, new fieldDate('date_pub', array('title' => LANG_CONTENT_DATE_PUB, 'default' => date('Y-m-d H:') . ($m - $m % 5), 'options' => array('show_time' => true), 'rules' => array(array('required')))));
}
if ($is_pub_end_date) {
$pub_fieldset_id = $pub_fieldset_id ? $pub_fieldset_id : $form->addFieldset(LANG_CONTENT_PUB);
$form->addField($pub_fieldset_id, new fieldDate('date_pub_end', array('title' => LANG_CONTENT_DATE_PUB_END, 'hint' => LANG_CONTENT_DATE_PUB_END_HINT)));
}
if ($action == 'add' && $is_pub_end_days || $action == 'edit' && $is_pub_ext && $is_pub_end_days) {
$pub_fieldset_id = $pub_fieldset_id ? $pub_fieldset_id : $form->addFieldset(LANG_CONTENT_PUB);
$title = $action == 'add' ? LANG_CONTENT_PUB_LONG : LANG_CONTENT_PUB_LONG_EXT;
$hint = $action == 'add' ? false : sprintf(LANG_CONTENT_PUB_LONG_NOW, html_date($item['date_pub_end']));
if ($pub_max_days) {
$days = array();
$rules = array();
if ($action == 'add') {
$rules[] = array('required');
$min = 1;
}
if ($action == 'edit') {
$min = 0;
}
$rules[] = array('number');
$rules[] = array('min', $min);
$rules[] = array('max', $pub_max_days);
if ($action == 'add') {
$rules[] = array('required');
$min = 1;
}
if ($action == 'edit') {
$min = 0;
}
for ($d = $min; $d <= $pub_max_days; $d++) {
$days[$d] = $d;
}
$form->addField($pub_fieldset_id, new fieldList('pub_days', array('title' => $title, 'hint' => $hint, 'items' => $days, 'rules' => $rules)));
} else {
$rules = array();
if ($action == 'add') {
$rules[] = array('required');
$min = 1;
}
if ($action == 'edit') {
$min = 0;
}
$rules[] = array('min', $min);
$rules[] = array('max', 65535);
$form->addField($pub_fieldset_id, new fieldNumber('pub_days', array('title' => $title, 'default' => 10, 'rules' => $rules)));
}
}
}
return $form;
}
示例3: run
public function run()
{
$user = cmsUser::getInstance();
// Получаем название типа контента
$ctype_name = $this->request->get('ctype_name');
// проверяем наличие доступа
if (!cmsUser::isAllowed($ctype_name, 'add')) {
cmsCore::error404();
}
// Получаем тип контента
$ctype = $this->model->getContentTypeByName($ctype_name);
if (!$ctype) {
cmsCore::error404();
}
// проверяем что не превышен лимит на число записей
$user_items_count = $this->model->getUserContentItemsCount($ctype_name, $user->id, false);
if (cmsUser::isPermittedLimitReached($ctype_name, 'limit', $user_items_count)) {
cmsUser::addSessionMessage(sprintf(LANG_CONTENT_COUNT_LIMIT, $ctype['labels']['many']), 'error');
$this->redirectBack();
}
// Проверяем ограничение по карме
if (cmsUser::isPermittedLimitHigher($ctype_name, 'karma', $user->karma)) {
cmsUser::addSessionMessage(sprintf(LANG_CONTENT_KARMA_LIMIT, cmsUser::getPermissionValue($ctype_name, 'karma')), 'error');
$this->redirectBack();
}
$item = array();
if ($ctype['is_cats']) {
$category_id = $this->request->get('to_id');
}
// Определяем наличие полей-свойств
$props = $this->model->getContentProps($ctype['name']);
$ctype['props'] = $props;
// Если этот контент можно создавать в группах (сообществах) то получаем список групп
$groups_list = array();
if ($ctype['is_in_groups'] || $ctype['is_in_groups_only']) {
$groups_model = cmsCore::getModel('groups');
$groups = $groups_model->getUserGroups($user->id);
if (!$groups && $ctype['is_in_groups_only']) {
cmsUser::addSessionMessage(sprintf(LANG_CONTENT_IS_IN_GROUPS_ONLY, $ctype['labels']['many']), 'error');
$this->redirectBack();
}
$groups_list = $ctype['is_in_groups_only'] ? array() : array('0' => '');
$groups_list = $groups_list + array_collection_to_list($groups, 'id', 'title');
}
// Если включены личные папки - получаем их список
$folders_list = array();
if ($ctype['is_folders']) {
$folders_list = $this->model->getContentFolders($ctype['id'], $user->id);
$folders_list = array_collection_to_list($folders_list, 'id', 'title');
}
// Получаем поля для данного типа контента
$this->model->orderBy('ordering');
$fields = $this->model->getContentFields($ctype['name']);
$form = $this->getItemForm($ctype, $fields, 'add', array('groups_list' => $groups_list, 'folders_list' => $folders_list));
// Заполняем поля значениями по-умолчанию, взятыми из профиля пользователя
// (для тех полей, в которых это включено)
foreach ($fields as $field) {
if (!empty($field['options']['profile_value'])) {
$item[$field['name']] = $user->{$field['options']['profile_value']};
}
}
$is_moderator = $user->is_admin || $this->model->userIsContentTypeModerator($ctype_name, $user->id);
$is_premoderation = $ctype['is_premod_add'];
cmsEventsManager::hook("content_add", $ctype);
list($form, $item) = cmsEventsManager::hook("content_{$ctype['name']}_form", array($form, $item));
// Форма отправлена?
$is_submitted = $this->request->has('submit');
if (!$is_submitted && !empty($category_id)) {
$item['category_id'] = $category_id;
}
if ($this->request->has('group_id') && $groups_list && !$is_submitted) {
$item['parent_id'] = $this->request->get('group_id');
}
$item['ctype_name'] = $ctype['name'];
$item['ctype_id'] = $ctype['id'];
if ($is_submitted) {
if ($ctype['props']) {
$props_cat_id = $this->request->get('category_id');
if ($props_cat_id) {
$item_props = $this->model->getContentProps($ctype['name'], $props_cat_id);
$item_props_fields = $this->getPropsFields($item_props);
foreach ($item_props_fields as $field) {
$form->addField('props', $field);
}
}
}
// Парсим форму и получаем поля записи
$item = array_merge($item, $form->parse($this->request, $is_submitted));
// Проверям правильность заполнения
$errors = $form->validate($this, $item);
if (!$errors) {
list($item, $errors) = cmsEventsManager::hook('content_validate', array($item, $errors));
}
if (!$errors) {
unset($item['ctype_name']);
unset($item['ctype_id']);
$item['is_approved'] = !$ctype['is_premod_add'] || $is_moderator;
$item['parent_type'] = null;
$item['parent_title'] = null;
$item['parent_url'] = null;
//.........这里部分代码省略.........