12b5a1390SSatoshi Sahara<?php 22b5a1390SSatoshi Sahara 32b5a1390SSatoshi Saharanamespace dokuwiki\Ui; 42b5a1390SSatoshi Sahara 52b5a1390SSatoshi Saharause dokuwiki\Extension\Event; 62b5a1390SSatoshi Saharause dokuwiki\Form\Form; 72b5a1390SSatoshi Sahara 82b5a1390SSatoshi Sahara/** 92b5a1390SSatoshi Sahara * DokuWiki User Registration Insterface (Register Form) 102b5a1390SSatoshi Sahara * 112b5a1390SSatoshi Sahara * @package dokuwiki\Ui 122b5a1390SSatoshi Sahara */ 132b5a1390SSatoshi Saharaclass UserRegister extends Ui 142b5a1390SSatoshi Sahara{ 152b5a1390SSatoshi Sahara /** 162b5a1390SSatoshi Sahara * Display the User Registration Form Panel 172b5a1390SSatoshi Sahara * 182b5a1390SSatoshi Sahara * @author Andreas Gohr <andi@splitbrain.org> 192b5a1390SSatoshi Sahara * 202b5a1390SSatoshi Sahara * @triggers HTML_REGISTERFORM_OUTPUT 212b5a1390SSatoshi Sahara * @return void 222b5a1390SSatoshi Sahara */ 232b5a1390SSatoshi Sahara public function show() 242b5a1390SSatoshi Sahara { 252b5a1390SSatoshi Sahara global $lang; 262b5a1390SSatoshi Sahara global $conf; 272b5a1390SSatoshi Sahara global $INPUT; 282b5a1390SSatoshi Sahara 292b5a1390SSatoshi Sahara $base_attrs = array('size' => '50', 'required' => 'required'); 302b5a1390SSatoshi Sahara $email_attrs = $base_attrs + array('type' => 'email'); 312b5a1390SSatoshi Sahara 322b5a1390SSatoshi Sahara // print intro 332b5a1390SSatoshi Sahara print p_locale_xhtml('register'); 342b5a1390SSatoshi Sahara print '<div class="centeralign">'.DOKU_LF; 352b5a1390SSatoshi Sahara 362b5a1390SSatoshi Sahara // create the login form 372b5a1390SSatoshi Sahara $form = new Form(['id' => 'dw__register']); 382b5a1390SSatoshi Sahara $form->addTagOpen('div')->addClass('no'); 392b5a1390SSatoshi Sahara $form->addFieldsetOpen($lang['btn_register']); 402b5a1390SSatoshi Sahara $form->setHiddenField('do', 'register'); 412b5a1390SSatoshi Sahara $form->setHiddenField('save', '1'); 422b5a1390SSatoshi Sahara 432b5a1390SSatoshi Sahara $input = $form->addTextInput('login', $lang['user'])->attrs($base_attrs)->addClass('edit') 442b5a1390SSatoshi Sahara ->val($INPUT->post->str('login')); 452b5a1390SSatoshi Sahara $input->getLabel()->attr('class', 'block'); 462b5a1390SSatoshi Sahara $form->addHTML("<br>\n"); 472b5a1390SSatoshi Sahara 482b5a1390SSatoshi Sahara if (!$conf['autopasswd']) { 492b5a1390SSatoshi Sahara $input = $form->addPasswordInput('pass', $lang['pass'])->attrs($base_attrs)->addClass('edit'); 502b5a1390SSatoshi Sahara $input->getLabel()->attr('class', 'block'); 512b5a1390SSatoshi Sahara $form->addHTML("<br>\n"); 522b5a1390SSatoshi Sahara $input = $form->addPasswordInput('passchk', $lang['passchk'])->attrs($base_attrs)->addClass('edit'); 532b5a1390SSatoshi Sahara $input->getLabel()->attr('class', 'block'); 542b5a1390SSatoshi Sahara $form->addHTML("<br>\n"); 552b5a1390SSatoshi Sahara } 562b5a1390SSatoshi Sahara 57*a17df5bdSSatoshi Sahara $input = $form->addTextInput('fullname', $lang['fullname'])->attrs($base_attrs)->addClass('edit') 582b5a1390SSatoshi Sahara ->val($INPUT->post->str('fullname')); 592b5a1390SSatoshi Sahara $input->getLabel()->attr('class', 'block'); 602b5a1390SSatoshi Sahara $form->addHTML("<br>\n"); 612b5a1390SSatoshi Sahara 622b5a1390SSatoshi Sahara $input = $form->addTextInput('email', $lang['email'])->attrs($email_attrs)->addClass('edit') 632b5a1390SSatoshi Sahara ->val($INPUT->post->str('email')); 642b5a1390SSatoshi Sahara $input->getLabel()->attr('class', 'block'); 652b5a1390SSatoshi Sahara $form->addHTML("<br>\n"); 662b5a1390SSatoshi Sahara 672b5a1390SSatoshi Sahara $form->addButton('', $lang['btn_register'])->attr('type', 'submit'); 682b5a1390SSatoshi Sahara $form->addFieldsetClose(); 692b5a1390SSatoshi Sahara $form->addTagClose('div'); 702b5a1390SSatoshi Sahara 712b5a1390SSatoshi Sahara // emit HTML_REGISTERFORM_OUTPUT event, print the form 722b5a1390SSatoshi Sahara Event::createAndTrigger('HTML_REGISTERFORM_OUTPUT', $form, 'html_form_output', false); 732b5a1390SSatoshi Sahara 742b5a1390SSatoshi Sahara print '</div>'.DOKU_LF; 752b5a1390SSatoshi Sahara } 762b5a1390SSatoshi Sahara 772b5a1390SSatoshi Sahara} 78