本文整理汇总了PHP中Control::data方法的典型用法代码示例。如果您正苦于以下问题:PHP Control::data方法的具体用法?PHP Control::data怎么用?PHP Control::data使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Control
的用法示例。
在下文中一共展示了Control::data方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getAdminFormXML
/**
* @mcms_message ru.molinos.cms.admin.form.backup
*/
public function getAdminFormXML(Context $ctx)
{
$form = new Form(array('action' => '?q=backup.rpc', 'title' => t('Архивирование сайта')));
$form->addControl(new EnumRadioControl(array('value' => 'action', 'label' => t('Выберите операцию'), 'options' => array('backup' => t('Скачать архив сайта')), 'required' => true)));
$form->addControl(new SubmitControl(array('text' => t('Продолжить'))));
return $form->getXML(Control::data(array()));
}
示例2: getXML
/**
* Возвращает форму авторизации.
*
* @param Context $ctx
* @return string
* @mcms_message ru.molinos.cms.auth.form
*/
public static function getXML(Context $ctx)
{
if (!($providers = $ctx->registry->poll('ru.molinos.cms.auth.enum'))) {
return null;
}
$form = self::getForm($providers)->getXML(Control::data());
return $form;
}
示例3: on_get_edit
/**
* Настройка правила (форма).
*/
public static function on_get_edit(Context $ctx)
{
if (!($name = $ctx->get('name'))) {
throw new BadRequestException(t('Не указано имя трансформации (параметр name).'));
}
if (!($data = $ctx->config->getArray(self::confroot . '/' . $name))) {
throw new PageNotFoundException();
}
$data['name'] = $name;
$form = self::get_schema()->sort()->getForm(array('title' => t('Настройка трансформации «%name»', array('%name' => $name))))->getXML(Control::data($data));
return html::em('content', array('name' => 'form'), $form);
}
示例4: rpc_post_configure
public static function rpc_post_configure(Context $ctx)
{
$conf = array();
if (!($moduleName = $ctx->get('module'))) {
throw new RuntimeException(t('Не указано имя настраиваемого модуля.'));
}
$conf = Control::data();
foreach (modman::settings_get($ctx, $moduleName) as $k => $v) {
$v->set($ctx->post($k, $v->default), $conf);
}
$ctx->config->set('modules/' . $moduleName, $conf->dump())->save();
Logger::log($moduleName . ': configuration updated.');
}
示例5: on_get_edit
public static function on_get_edit(Context $ctx)
{
$list = Widget::loadWidgets($ctx);
if (!array_key_exists($name = $ctx->get('name'), $list)) {
throw new PageNotFoundException();
}
if (empty($list[$name]['classname'])) {
throw new RuntimeException(t('Не указан тип виджета %name.', array('%name' => $name)));
}
if (!class_exists($list[$name]['classname'])) {
throw new RuntimeException(t('Используемый виджетом «%name» класс (%class) отсутствует.', array('%name' => $name, '%class' => $list[$name]['classname'])));
}
$info = $list[$name];
$info['name'] = $name;
$info['pages'] = self::get_pages_for($ctx, $name);
$form = self::get_form($ctx, $info['classname'], $name);
$html = $form->getXML(Control::data($info));
return html::wrap('content', $html, array('name' => 'edit'));
}
示例6: aui_upgrade
protected static function aui_upgrade(Context $ctx)
{
$schema = new Schema(array('modules' => array('type' => 'ModManControl', 'columns' => array('check', 'name', 'version', 'available'), 'disable_required' => false), 'submit' => array('type' => 'SubmitControl', 'text' => t('Обновить отмеченные'))));
$form = $schema->getForm(array('title' => t('Обновление модулей'), 'action' => '?q=modman.rpc&action=upgrade&destination=' . urlencode($ctx->get('destination', 'CURRENT'))));
return $form->getHTML(Control::data(array('modules' => modman::getUpdatedModules())));
}
示例7: getFormData
private static function getFormData($key, array $data)
{
list($data['host'], $data['path']) = explode('/', $key, 2);
return Control::data($data);
}
示例8: on_get_create_form
/**
* Возвращает форму для создания документа.
*/
public static function on_get_create_form(Context $ctx)
{
if (!($type = $ctx->get('type'))) {
throw new BadRequestException(t('Не указан тип документа (GET-параметр type).'));
}
$node = Node::create(array('class' => $type, 'parent_id' => $ctx->get('parent')))->knock(ACL::CREATE);
$form = $node->formGet();
// destination берётся из $_SERVER, и при работе через XML API содержит не то,
// что может быть нужно, поэтому корректируем руками.
$action = new url($form->action);
$action->setarg('destination', $ctx->get('destination'));
$form->action = $action->string();
$form->addClass('create');
$form->addClass('create-' . $type);
return new Response($form->getXML(Control::data()), 'text/xml');
}
示例9: settings
public static function settings(Context $ctx, $query, array $pathinfo)
{
// Проверяем права, если неверно указан обработчик.
if ('AdminPage::serve' != $pathinfo['call']) {
if (empty($pathinfo['perms'])) {
$pathinfo['perms'] = 'debug';
}
AdminPage::checkperm($ctx, $pathinfo);
}
$name = substr(strrchr($query, '/'), 1);
$schema = self::settings_get($ctx, $name);
$form = $schema->getForm();
$data = $ctx->config->get('modules/' . $name, array());
$title = $pathinfo['title'];
if (empty($form->title)) {
$form->title = $title;
}
$form->action = '?q=modman.rpc&action=configure&module=' . urlencode($name) . '&destination=admin/system/settings';
$form->addControl(new SubmitControl(array('text' => t('Сохранить'))));
$result = html::em('content', array('name' => 'form', 'title' => $name, 'mode' => 'config'), $form->getXML(Control::data($data)));
$page = new AdminPage($result);
return $page->getResponse($ctx);
}
示例10: formRender
/**
* Формирование HTML кода формы.
*
* @param string $id идентификатор формы (напр., "my-form").
*
* @param array $data Данные для формы. Если не указаны, вызывается метод
* formGetData($id).
*
* @return Control описание формы или NULL, если формы с таким id нет.
*/
protected function formRender($id, $data = null)
{
if (null === ($form = $this->formGet($id))) {
return null;
}
if (null === $data) {
$data = $this->formGetData($id);
}
if (is_array($data)) {
$data = Control::data($data);
}
$form->id = $id;
if (!$form instanceof Form) {
throw new InvalidArgumentException(t("Значение, полученное от метода formGet(%id) виджета %class не является формой.", array('%id' => $id, '%class' => get_class($this))));
}
if (null === $form->findControl('destination')) {
$form->addControl(new HiddenControl(array('value' => 'destination')));
}
$html = $form->getXML($data);
if (!empty($html) and null !== $id) {
$html = html::em('div', array('id' => $id . '-wrapper', 'class' => $form->wrapper_class), $html);
}
return $html;
}
示例11: getFormData
/**
* Валидирует форму, возвращает данные.
*/
public function getFormData(Context $ctx, &$data = null)
{
if (null === $data) {
$data = Control::data(array());
}
foreach ($this as $name => $field) {
$value = $ctx->post($name);
$field->set($value, $data, $ctx->post);
}
return $data;
}
示例12: on_get_add_field
/**
* Возвращает форму добавления поля.
*/
public static function on_get_add_field(Context $ctx)
{
$schema = self::getFieldSchema($class = $ctx->get('class'));
$types = Control::getKnownTypes();
$form = $schema->getForm(array('title' => t('Новое поле: %type', array('%type' => mb_strtolower($types[$class])))));
$form->addControl(new SubmitControl(array('text' => t('Добавить'))));
return html::em('content', array('name' => 'edit'), $form->getXML(Control::data()));
}