responsive
This commit is contained in:
		
							parent
							
								
									3ad1b5c20a
								
							
						
					
					
						commit
						302acfa2d9
					
				| 
						 | 
				
			
			@ -1090,12 +1090,11 @@ class windowsUser extends baseModule implements passwordService {
 | 
			
		|||
	 */
 | 
			
		||||
	public function display_html_attributes() {
 | 
			
		||||
		$this->initCache();
 | 
			
		||||
		$containerLeft = new htmlTable();
 | 
			
		||||
		$containerLeft->alignment = htmlElement::ALIGN_TOP;
 | 
			
		||||
		$containerLeft = new htmlResponsiveRow();
 | 
			
		||||
		if ($this->getAccountContainer()->isNewAccount && !isset($this->attributes['userAccountControl'][0])) {
 | 
			
		||||
			$this->attributes['userAccountControl'][0] = windowsUser::DEFAULT_ACCOUNT_CONTROL;
 | 
			
		||||
		}
 | 
			
		||||
		$containerLeft->addElement(new htmlSubTitle(_('General')), true);
 | 
			
		||||
		$containerLeft->add(new htmlSubTitle(_('General')), 12);
 | 
			
		||||
		// user name
 | 
			
		||||
		$userPrincipalName = '';
 | 
			
		||||
		$userPrincipalNameDomain = '';
 | 
			
		||||
| 
						 | 
				
			
			@ -1113,12 +1112,12 @@ class windowsUser extends baseModule implements passwordService {
 | 
			
		|||
		}
 | 
			
		||||
		$userPrincipalNameLabel = new htmlOutputText(_('User name'));
 | 
			
		||||
		$userPrincipalNameLabel->setMarkAsRequired(true);
 | 
			
		||||
		$containerLeft->addElement($userPrincipalNameLabel);
 | 
			
		||||
		$containerLeft->addLabel($userPrincipalNameLabel);
 | 
			
		||||
		$userPrincipalNameGroup = new htmlGroup();
 | 
			
		||||
		$userPrincipalNameGroup->addElement(new htmlInputField('userPrincipalName', $userPrincipalName, '15'));
 | 
			
		||||
		$userPrincipalNameGroup->addElement(new htmlSelect('userPrincipalNameDomain', $domains, array($userPrincipalNameDomain)));
 | 
			
		||||
		$containerLeft->addElement($userPrincipalNameGroup);
 | 
			
		||||
		$containerLeft->addElement(new htmlHelpLink('userPrincipalName'), true);
 | 
			
		||||
		$userPrincipalNameGroup->addElement(new htmlHelpLink('userPrincipalName'));
 | 
			
		||||
		$containerLeft->addField($userPrincipalNameGroup);
 | 
			
		||||
		if (!$this->isBooleanConfigOptionSet('windowsUser_hidesAMAccountName', true)) {
 | 
			
		||||
			$this->addSimpleInputTextField($containerLeft, 'sAMAccountName', _('User name (pre W2K)'));
 | 
			
		||||
		}
 | 
			
		||||
| 
						 | 
				
			
			@ -1129,7 +1128,7 @@ class windowsUser extends baseModule implements passwordService {
 | 
			
		|||
		$this->addSimpleInputTextField($containerLeft, 'initials', _('Initials'));
 | 
			
		||||
		$this->addSimpleInputTextField($containerLeft, 'description', _('Description'));
 | 
			
		||||
		// address area
 | 
			
		||||
		$containerLeft->addElement(new htmlSubTitle(_('Address')), true);
 | 
			
		||||
		$containerLeft->add(new htmlSubTitle(_('Address')), 12);
 | 
			
		||||
		$this->addSimpleInputTextField($containerLeft, 'streetAddress', _('Street'), false, 20, true);
 | 
			
		||||
		$this->addSimpleInputTextField($containerLeft, 'postOfficeBox', _('Post office box'));
 | 
			
		||||
		$this->addSimpleInputTextField($containerLeft, 'postalCode', _('Postal code'));
 | 
			
		||||
| 
						 | 
				
			
			@ -1137,7 +1136,7 @@ class windowsUser extends baseModule implements passwordService {
 | 
			
		|||
		$this->addSimpleInputTextField($containerLeft, 'st', _('State'));
 | 
			
		||||
		$this->addSimpleInputTextField($containerLeft, 'physicalDeliveryOfficeName', _('Office name'));
 | 
			
		||||
		// contact data area
 | 
			
		||||
		$containerLeft->addElement(new htmlSubTitle(_('Contact data')), true);
 | 
			
		||||
		$containerLeft->add(new htmlSubTitle(_('Contact data')), 12);
 | 
			
		||||
		$this->addSimpleInputTextField($containerLeft, 'mail', _('Email address'));
 | 
			
		||||
		$this->addMultiValueInputTextField($containerLeft, 'otherMailbox', _('Email alias'));
 | 
			
		||||
		if (!$this->isBooleanConfigOptionSet('windowsUser_hideproxyAddresses', true)) {
 | 
			
		||||
| 
						 | 
				
			
			@ -1164,7 +1163,7 @@ class windowsUser extends baseModule implements passwordService {
 | 
			
		|||
		$this->addMultiValueInputTextField($containerLeft, 'url', _('Other web sites'));
 | 
			
		||||
		// work details area
 | 
			
		||||
		if ($this->manageWorkDetails()) {
 | 
			
		||||
			$containerLeft->addElement(new htmlSubTitle(_('Work details')), true);
 | 
			
		||||
			$containerLeft->add(new htmlSubTitle(_('Work details')), 12);
 | 
			
		||||
			if (!$this->isBooleanConfigOptionSet('windowsUser_hidetitle', true)) {
 | 
			
		||||
				$this->addSimpleInputTextField($containerLeft, 'title', _('Job title'), false, null, false, array_slice($this->titleCache, 0, 300));
 | 
			
		||||
			}
 | 
			
		||||
| 
						 | 
				
			
			@ -1196,55 +1195,63 @@ class windowsUser extends baseModule implements passwordService {
 | 
			
		|||
				$this->addMultiValueInputTextField($containerLeft, 'o', _('Organisation'), false, null, false, array_slice($this->oCache, 0, 300));
 | 
			
		||||
			}
 | 
			
		||||
			if (!$this->isBooleanConfigOptionSet('windowsUser_hidemanager', true)) {
 | 
			
		||||
				$containerLeft->addElement(new htmlOutputText(_('Manager')));
 | 
			
		||||
				$containerLeft->addLabel(new htmlOutputText(_('Manager')));
 | 
			
		||||
				$managerGroup = new htmlGroup();
 | 
			
		||||
				$managerVal = (empty($this->attributes['manager'][0])) ? '-' : getAbstractDN($this->attributes['manager'][0]);
 | 
			
		||||
				$managerGroup->addElement(new htmlOutputText($managerVal));
 | 
			
		||||
				$managerGroup->addElement(new htmlSpacer('5px', null));
 | 
			
		||||
				$managerGroup->addElement(new htmlSpacer('0.5rem', null));
 | 
			
		||||
				$managerGroup->addElement(new htmlAccountPageButton(get_class($this), 'manager', 'change', _("Change")));
 | 
			
		||||
				$containerLeft->addElement($managerGroup);
 | 
			
		||||
				$containerLeft->addElement(new htmlHelpLink('manager'), true);
 | 
			
		||||
				$managerGroup->addElement(new htmlSpacer('0.5rem', null));
 | 
			
		||||
				$managerGroup->addElement(new htmlHelpLink('manager'), true);
 | 
			
		||||
				$containerLeft->addField($managerGroup);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		// account area
 | 
			
		||||
		$containerLeft->addElement(new htmlSubTitle(_('Account')), true);
 | 
			
		||||
		$containerLeft->add(new htmlSubTitle(_('Account')), 12);
 | 
			
		||||
		// password change required
 | 
			
		||||
		$pwdMustChange = false;
 | 
			
		||||
		if (isset($this->attributes['pwdLastSet'][0]) && ($this->attributes['pwdLastSet'][0] === '0')) {
 | 
			
		||||
			$pwdMustChange = true;
 | 
			
		||||
		}
 | 
			
		||||
		$containerLeft->addElement(new htmlTableExtendedInputCheckbox('forcePasswordChangeOption', $pwdMustChange, _("User must change password"), 'pwdMustChange'), true);
 | 
			
		||||
		$containerLeft->add(new htmlResponsiveInputCheckbox('forcePasswordChangeOption', $pwdMustChange, _("User must change password"), 'pwdMustChange'), 12);
 | 
			
		||||
		// deactivated
 | 
			
		||||
		$deactivated = windowsUser::isDeactivated($this->attributes);
 | 
			
		||||
		$containerLeft->addElement(new htmlTableExtendedInputCheckbox('deactivated', $deactivated, _("Account is deactivated"), 'deactivated'), true);
 | 
			
		||||
		$containerLeft->add(new htmlResponsiveInputCheckbox('deactivated', $deactivated, _("Account is deactivated"), 'deactivated'), 12);
 | 
			
		||||
		// password does not expire
 | 
			
		||||
		$noExpire = windowsUser::isNeverExpiring($this->attributes);
 | 
			
		||||
		$containerLeft->addElement(new htmlTableExtendedInputCheckbox('noExpire', $noExpire, _("Password does not expire"), 'noExpire'), true);
 | 
			
		||||
		$containerLeft->add(new htmlResponsiveInputCheckbox('noExpire', $noExpire, _("Password does not expire"), 'noExpire'), 12);
 | 
			
		||||
		// require smartcard
 | 
			
		||||
		$requireCard = windowsUser::isSmartCardRequired($this->attributes);
 | 
			
		||||
		$containerLeft->addElement(new htmlTableExtendedInputCheckbox('requireCard', $requireCard, _("Require smartcard"), 'requireCard'), true);
 | 
			
		||||
		$containerLeft->add(new htmlResponsiveInputCheckbox('requireCard', $requireCard, _("Require smartcard"), 'requireCard'), 12);
 | 
			
		||||
		// account expiration
 | 
			
		||||
		$containerLeft->addElement(new htmlOutputText(_('Account expiration date')));
 | 
			
		||||
		$containerLeft->addLabel(new htmlOutputText(_('Account expiration date')));
 | 
			
		||||
		$accountExpiresGroup = new htmlGroup();
 | 
			
		||||
		$accountExpiresGroup->addElement(new htmlOutputText($this->formatAccountExpires()));
 | 
			
		||||
		$accountExpiresGroup->addElement(new htmlSpacer('5px', null));
 | 
			
		||||
		$accountExpiresGroup->addElement(new htmlSpacer('0.5rem', null));
 | 
			
		||||
		$accountExpiresGroup->addElement(new htmlAccountPageButton(get_class($this), 'accountExpires', 'edit', _('Change')));
 | 
			
		||||
		$containerLeft->addElement($accountExpiresGroup);
 | 
			
		||||
		$containerLeft->addElement(new htmlHelpLink('accountExpires'), true);
 | 
			
		||||
		$accountExpiresGroup->addElement(new htmlSpacer('0.5rem', null));
 | 
			
		||||
		$accountExpiresGroup->addElement(new htmlHelpLink('accountExpires'), true);
 | 
			
		||||
		$containerLeft->addField($accountExpiresGroup);
 | 
			
		||||
		// last password change
 | 
			
		||||
		if (!$this->isBooleanConfigOptionSet('windowsUser_hidepwdLastSet')) {
 | 
			
		||||
			$containerLeft->addElement(new htmlOutputText(_('Last password change')));
 | 
			
		||||
			$containerLeft->addElement(new htmlOutputText($this->formatPwdLastSet()));
 | 
			
		||||
			$containerLeft->addElement(new htmlHelpLink('pwdLastSet'), true);
 | 
			
		||||
			$containerLeft->addLabel(new htmlOutputText(_('Last password change')));
 | 
			
		||||
			$pwdLastSetGroup = new htmlGroup();
 | 
			
		||||
			$pwdLastSetGroup->addElement(new htmlOutputText($this->formatPwdLastSet()));
 | 
			
		||||
			$pwdLastSetGroup->addElement(new htmlSpacer('0.5rem', null));
 | 
			
		||||
			$pwdLastSetGroup->addElement(new htmlHelpLink('pwdLastSet'));
 | 
			
		||||
			$containerLeft->addField($pwdLastSetGroup);
 | 
			
		||||
		}
 | 
			
		||||
		// last login
 | 
			
		||||
		if (!$this->isBooleanConfigOptionSet('windowsUser_hidelastLogonTimestamp')) {
 | 
			
		||||
			$containerLeft->addElement(new htmlOutputText(_('Last login')));
 | 
			
		||||
			$containerLeft->addElement(new htmlOutputText($this->formatLastLogonTimestamp()));
 | 
			
		||||
			$containerLeft->addElement(new htmlHelpLink('lastLogonTimestamp'), true);
 | 
			
		||||
			$containerLeft->addLabel(new htmlOutputText(_('Last login')));
 | 
			
		||||
			$lastLogonTimestampGroup = new htmlGroup();
 | 
			
		||||
			$lastLogonTimestampGroup->addElement(new htmlOutputText($this->formatLastLogonTimestamp()));
 | 
			
		||||
			$lastLogonTimestampGroup->addElement(new htmlSpacer('0.5rem', null));
 | 
			
		||||
			$lastLogonTimestampGroup->addElement(new htmlHelpLink('lastLogonTimestamp'));
 | 
			
		||||
			$containerLeft->addField($lastLogonTimestampGroup);
 | 
			
		||||
		}
 | 
			
		||||
		// user profile area
 | 
			
		||||
		$containerLeft->addElement(new htmlSubTitle(_('User profile')), true);
 | 
			
		||||
		$containerLeft->add(new htmlSubTitle(_('User profile')), 12);
 | 
			
		||||
		// profile path
 | 
			
		||||
		$this->addSimpleInputTextField($containerLeft, 'profilePath', _('Profile path'));
 | 
			
		||||
		// logon script
 | 
			
		||||
| 
						 | 
				
			
			@ -1260,13 +1267,13 @@ class windowsUser extends baseModule implements passwordService {
 | 
			
		|||
		else {
 | 
			
		||||
			$selected = array('-');
 | 
			
		||||
		}
 | 
			
		||||
		$containerLeft->addElement(new htmlTableExtendedSelect('homeDrive', $drives, $selected, _('Home drive'), 'homeDrive'), true);
 | 
			
		||||
		$containerLeft->add(new htmlResponsiveSelect('homeDrive', $drives, $selected, _('Home drive'), 'homeDrive'), 12);
 | 
			
		||||
		// home directory
 | 
			
		||||
		$this->addSimpleInputTextField($containerLeft, 'homeDirectory', _('Home directory'));
 | 
			
		||||
 | 
			
		||||
		// NIS attributes
 | 
			
		||||
		if (!$this->isBooleanConfigOptionSet('windowsUser_hidemsSFU30Name', true) || !$this->isBooleanConfigOptionSet('windowsUser_hidemsSFU30NisDomain', true)) {
 | 
			
		||||
			$containerLeft->addElement(new htmlSubTitle(_('NIS')), true);
 | 
			
		||||
			$containerLeft->add(new htmlSubTitle(_('NIS')), 12);
 | 
			
		||||
			if (!$this->isBooleanConfigOptionSet('windowsUser_hidemsSFU30Name', true)) {
 | 
			
		||||
				$this->addSimpleInputTextField($containerLeft, 'msSFU30Name', _('NIS name'));
 | 
			
		||||
			}
 | 
			
		||||
| 
						 | 
				
			
			@ -1275,14 +1282,9 @@ class windowsUser extends baseModule implements passwordService {
 | 
			
		|||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		$containerLeft->addElement(new htmlEqualWidth(array('streetAddress', 'cn')), true);
 | 
			
		||||
 | 
			
		||||
		$containerRight = new htmlTable();
 | 
			
		||||
		$containerRight->alignment = htmlElement::ALIGN_TOP;
 | 
			
		||||
		$containerRight = new htmlResponsiveRow();
 | 
			
		||||
		// photo
 | 
			
		||||
		if (!$this->isBooleanConfigOptionSet('windowsUser_hidejpegPhoto', true)) {
 | 
			
		||||
			$imageContainer = new htmlTable();
 | 
			
		||||
			$imageContainer->alignment = htmlElement::ALIGN_TOP;
 | 
			
		||||
			$photoFile = '../../graphics/userDefault.png';
 | 
			
		||||
			$noPhoto = true;
 | 
			
		||||
			if (isset($this->attributes['jpegPhoto'][0])) {
 | 
			
		||||
| 
						 | 
				
			
			@ -1296,20 +1298,20 @@ class windowsUser extends baseModule implements passwordService {
 | 
			
		|||
			$img = new htmlImage($photoFile);
 | 
			
		||||
			$img->setCSSClasses(array('photo'));
 | 
			
		||||
			$img->enableLightbox();
 | 
			
		||||
			$imageContainer->addElement($img, true);
 | 
			
		||||
			$containerRight->add($img, 12);
 | 
			
		||||
			$containerRight->addVerticalSpacer('0.5rem');
 | 
			
		||||
			if ($noPhoto) {
 | 
			
		||||
				$imageContainer->addElement(new htmlAccountPageButton(get_class($this), 'photo', 'open', _('Add photo')));
 | 
			
		||||
				$containerRight->add(new htmlAccountPageButton(get_class($this), 'photo', 'open', _('Add photo')), 12);
 | 
			
		||||
			}
 | 
			
		||||
			else {
 | 
			
		||||
				$imageContainer->addElement(new htmlButton('delPhoto', _('Delete photo')));
 | 
			
		||||
				$containerRight->add(new htmlButton('delPhoto', _('Delete photo')), 12);
 | 
			
		||||
			}
 | 
			
		||||
			$containerRight->addElement($imageContainer, true);
 | 
			
		||||
			$containerRight->addElement(new htmlSpacer(null, '20px'), true);
 | 
			
		||||
			$containerRight->addVerticalSpacer('2rem');
 | 
			
		||||
		}
 | 
			
		||||
		// groups
 | 
			
		||||
		$containerRight->addElement(new htmlSubTitle(_('Groups')), true);
 | 
			
		||||
		$containerRight->addElement(new htmlAccountPageButton(get_class($this), 'group', 'edit', _('Edit groups')), true);
 | 
			
		||||
		$containerRight->addElement(new htmlSpacer(null, '10px'), true);
 | 
			
		||||
		$containerRight->add(new htmlSubTitle(_('Groups')), 12);
 | 
			
		||||
		$containerRight->add(new htmlAccountPageButton(get_class($this), 'group', 'edit', _('Edit groups')), 12);
 | 
			
		||||
		$containerRight->addVerticalSpacer('1rem');
 | 
			
		||||
		$groupsList = new htmlGroup();
 | 
			
		||||
		$groupCNs = array();
 | 
			
		||||
		for ($i = 0; $i < sizeof($this->groupList); $i++) {
 | 
			
		||||
| 
						 | 
				
			
			@ -1320,12 +1322,12 @@ class windowsUser extends baseModule implements passwordService {
 | 
			
		|||
			$groupsList->addElement(new htmlOutputText($cn));
 | 
			
		||||
			$groupsList->addElement(new htmlOutputText('<br>', false));
 | 
			
		||||
		}
 | 
			
		||||
		$containerRight->addElement($groupsList);
 | 
			
		||||
		$containerRight->add($groupsList, 12);
 | 
			
		||||
 | 
			
		||||
		$container = new htmlTable();
 | 
			
		||||
		$container->addElement($containerLeft);
 | 
			
		||||
		$container->addElement(new htmlSpacer('40px', null));
 | 
			
		||||
		$container->addElement($containerRight);
 | 
			
		||||
		$container = new htmlResponsiveRow();
 | 
			
		||||
		$container->add($containerLeft, 12, 7);
 | 
			
		||||
		$container->add(new htmlSpacer('1rem', null), 0, 1);
 | 
			
		||||
		$container->add($containerRight, 12, 4);
 | 
			
		||||
		return $container;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue