本文整理汇总了PHP中FormUI::set_setting方法的典型用法代码示例。如果您正苦于以下问题:PHP FormUI::set_setting方法的具体用法?PHP FormUI::set_setting怎么用?PHP FormUI::set_setting使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FormUI
的用法示例。
在下文中一共展示了FormUI::set_setting方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: comment_form
/**
* Manage this post's comment form
*
* @param string $context The context in which the form is used, used to facilitate plugin alteration of the comment form in different circumstances
* @return FormUI The comment form for this post
*/
public function comment_form($context = 'public')
{
// Handle comment submissions and default commenter id values
$cookie = 'comment_' . Options::get('public-GUID');
$commenter_name = '';
$commenter_email = '';
$commenter_url = '';
$commenter_content = '';
$user = User::identify();
if ($user->loggedin) {
$commenter_name = $user->displayname;
$commenter_email = $user->email;
$commenter_url = Site::get_url('habari');
} elseif (isset($_COOKIE[$cookie])) {
// limit to 3 elements so a # in the URL stays appended
$commenter = explode('#', $_COOKIE[$cookie], 3);
// make sure there are always at least 3 elements
$commenter = array_pad($commenter, 3, null);
list($commenter_name, $commenter_email, $commenter_url) = $commenter;
}
// Now start the form.
$form = new FormUI('comment-' . $context, 'comment');
$form->add_class($context);
$form->add_class('commentform');
$form->set_wrap_each('<div>%s</div>');
$form->set_setting('use_session_errors', true);
// Enforce commenting rules
if (Options::get('comments_disabled')) {
$form->append(new FormControlStatic('message', _t('Comments are disabled site-wide.')));
$form->class[] = 'comments_disabled';
$form->set_properties(array('action' => '/'));
} elseif ($this->info->comments_disabled) {
$form->append(new FormControlStatic('message', _t('Comments for this post are disabled.')));
$form->class[] = 'comments_disabled';
$form->set_properties(array('action' => '/'));
} elseif (Options::get('comments_require_logon') && !$user->loggedin) {
$form->append(new FormControlStatic('message', _t('Commenting on this site requires authentication.')));
$form->class[] = 'comments_require_logon';
$form->set_properties(array('action' => '/'));
} elseif (!$user->can('comment')) {
$form->append(new FormControlStatic('message', _t('You do not have permission to comment on this site.')));
$form->class[] = 'comments_require_permission';
$form->set_properties(array('action' => '/'));
} else {
$form->set_properties(array('action' => URL::get('submit_feedback', array('id' => $this->id))));
// Create the Name field
$form->append(FormControlLabel::wrap(_t('Name <span class="required">*Required</span>'), FormControlText::create('cf_commenter', 'null:null', array('id' => 'comment_name', 'required' => 'required'))->add_validator('validate_required', _t('The Name field value is required'))));
// Create the Email field
$form->append($cf_email = FormControlText::create('cf_email', 'null:null', array('id' => 'comment_email', 'type' => 'email'))->add_validator('validate_email', _t('The Email field value must be a valid email address')));
if (Options::get('comments_require_id') == 1) {
$cf_email->add_validator('validate_required', _t('The Email field value must be a valid email address'));
$cf_email->label(_t('Email <span class="required">*Required</span>'));
$cf_email->set_property("required", "required");
} else {
$cf_email->label(_t('Email'));
}
$cf_email->set_value($commenter_email);
// Create the URL field
$form->append(FormControlLabel::wrap(_t('Website'), FormControlText::create('cf_url', 'null:null', array('id' => 'comment_url', 'type' => 'url')))->add_validator('validate_url', _t('The Website field value must be a valid URL')));
$form->cf_url->value = $commenter_url;
// Create the Comment field
$form->append(FormControlTextArea::create('cf_content', 'null:null', array('id' => 'comment_content', 'required' => 'required'))->add_validator('validate_required', _t('The Comment field value is required'))->label(_t('Content')));
$form->cf_content->value = $commenter_content;
// Create the Submit button
$form->append(FormControlSubmit::create('cf_submit')->set_properties(array('value' => _t('Submit'))));
// Let plugins alter this form
Plugins::act('form_comment', $form, $this, $context);
}
// Return the form object
return $form;
}