summaryrefslogtreecommitdiffstats
path: root/application/modules/user/forms/BootosUser.php
diff options
context:
space:
mode:
authormichael pereira2011-04-25 11:40:40 +0200
committermichael pereira2011-04-25 11:40:40 +0200
commite2d929c54a0d951c9bae51df7df5178bf9f0066f (patch)
tree142a271540cb0467350c91d1818340b0b09c8b7f /application/modules/user/forms/BootosUser.php
parentauto-close removed, handled by fbgui now (diff)
downloadpbs2-e2d929c54a0d951c9bae51df7df5178bf9f0066f.tar.gz
pbs2-e2d929c54a0d951c9bae51df7df5178bf9f0066f.tar.xz
pbs2-e2d929c54a0d951c9bae51df7df5178bf9f0066f.zip
config fertig
Diffstat (limited to 'application/modules/user/forms/BootosUser.php')
-rw-r--r--application/modules/user/forms/BootosUser.php161
1 files changed, 161 insertions, 0 deletions
diff --git a/application/modules/user/forms/BootosUser.php b/application/modules/user/forms/BootosUser.php
new file mode 100644
index 0000000..d5700d5
--- /dev/null
+++ b/application/modules/user/forms/BootosUser.php
@@ -0,0 +1,161 @@
+ <?php
+/*
+ * Copyright (c) 2011 - OpenSLX GmbH, RZ Uni Freiburg
+ * This program is free software distributed under the GPL version 2.
+ * See http://gpl.openslx.org/
+ *
+ * If you have any feedback please consult http://feedback.openslx.org/ and
+ * send your suggestions, praise, or complaints to feedback@openslx.org
+ *
+ * General information about OpenSLX can be found at http://openslx.org/
+ */
+
+class user_Form_BootosUser extends Zend_Form
+{
+
+ private $action;
+ private $type;
+ private $configID;
+ private $hometype;
+
+ public function setAction($action){
+ $this->action = $action;
+ }
+ public function setType($type){
+ $this->type = $type;
+ }
+ public function setConfigID($configID){
+ $this->configID = $configID;
+ }
+ public function setHometype($hometype){
+ $this->hometype = $hometype;
+ }
+
+
+ public function init()
+ {
+ $this->setName($this->action);
+ $this->setMethod('post');
+
+ if (!Pbs_Acl::checkRight('ce') && $this->action == 'editbootosuser')
+ $meta = true;
+ else
+ $meta = null;
+
+ if(!isset($_POST['hometypeID'])){
+ $_POST['hometypeID'] = '0';
+ }
+
+ $this->addElement('text', 'login', array(
+ 'filters' => array('StringTrim'),
+ 'validators' => array(
+ array('StringLength', false, array(0, 50)),
+ ),
+ 'required' => true,
+ 'label' => 'Login-Name:',
+ 'value' => $_POST['login'],
+ 'description' => 'Tip: Use %username% as a Wildcard'
+ ));
+
+ $this->addElement('password', 'password', array(
+ 'filters' => array('StringTrim'),
+ 'validators' => array(
+ array('StringLength', false, array(6)),
+ ),
+ 'required' => true,
+ 'label' => 'Password:',
+ 'errorMessages' => array('Please enter a password with more than 6 characters')
+ ));
+
+ $this->addElement('password', 'repeat_password', array(
+ 'filters' => array('StringTrim'),
+ 'validators' => array(
+ array('StringLength', false, array(6)),
+ ),
+ 'required' => true,
+ 'label' => 'Repeat Password:',
+ 'errorMessages' => array('Please repeat the password correctly'),
+ 'description' => 'Tip: Use %password% as a Wildcard'
+ ));
+
+
+
+ $hometypefield = $this->createElement('select','hometypeID');
+ $hometypefield->setLabel('Hometype:');
+ $hometypefield->setAttrib('readOnly', $meta);
+ $hometypefield->setAttrib('onChange', "document.getElementById('".$this->action."').submit();");
+ $hometypefield->setValue($_POST['hometypeID']);
+ foreach($this->hometype as $k => $ht){
+ $hometypefield->addMultiOption($ht->getID(), $ht->getName());
+ }
+
+ $this->addElement($hometypefield);
+
+ if($_POST['hometypeID'] == 0){
+ $this->addElement('text', 'homepath', array(
+ 'filters' => array('StringTrim'),
+ 'validators' => array(
+ array('StringLength', false, array(0, 50)),
+ ),
+ 'required' => true,
+ 'label' => 'Home-Path:',
+ 'size' => '30',
+ 'readOnly' => true,
+ 'value' => '/home/%login-name%'
+ ));
+ }elseif($_POST['hometypeID'] == 1){
+ $this->addElement('text', 'homepath', array(
+ 'filters' => array('StringTrim'),
+ 'validators' => array(
+ array('StringLength', false, array(0, 50)),
+ ),
+ 'required' => true,
+ 'label' => 'Home-Path:',
+ 'size' => '30',
+ 'readOnly' => true,
+ 'value' => 'usbstick://home/%login-name%'
+ ));
+ }else{
+ $this->addElement('text', 'homepath', array(
+ 'filters' => array('StringTrim'),
+ 'validators' => array(
+ array('StringLength', false, array(0, 50)),
+ ),
+ 'size' => '30',
+ 'required' => true,
+ 'label' => 'Home-Path:',
+ 'readOnly' => $meta
+ ));
+ }
+
+ if($this->action == "addbootosuser")
+ $label = "Add User";
+ else
+ $label = "Edit User";
+
+ $this->addElement('submit', $this->action, array(
+ 'required' => false,
+ 'ignore' => true,
+ 'label' => $label
+ ));
+
+ $this->addElement('button', 'Cancel', array(
+ 'onclick' => 'self.location="/user/config/showconfig/type/'.$this->type.'/configID/'.$this->configID.'"'
+ ));
+
+
+ $pbsNotifier = new Pbs_Notifier();
+ echo $pbsNotifier->notify('Use <b>%username%</b> and <b>%password%</b> as Wildcards for Login and Password.','info');
+ }
+
+ public function isValid($data)
+ {
+ $this->getElement('repeat_password')->
+ addValidator(new Zend_Validate_Identical($data['password']));
+
+ return parent::isValid($data);
+ }
+
+}
+?>
+