Changeset 15905
- Timestamp:
- 01/22/12 23:18:49 (4 months ago)
- Location:
- trunk
- Files:
-
- 6 edited
-
inc/classes/BxDolForm.php (modified) (2 diffs)
-
inc/classes/BxDolFormQuery.php (modified) (3 diffs)
-
install/sql/v70.sql (modified) (3 diffs)
-
samples/BxSampleForm.php (modified) (1 diff)
-
studio/classes/BxDolStudioFormsQuery.php (modified) (1 diff)
-
templates/base/scripts/BxBaseFormView.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/inc/classes/BxDolForm.php
r15835 r15905 154 154 * - display_name - name of the Form Display from sys_form_displays table. 155 155 * - input_name - name of the Form Field from sys_form_inputs table. 156 * - hidden_for_levels - bit field with set of member level ids. To use member level id in bit field the level id minus 1 is used as power of 2, for example:156 * - visible_for_levels - bit field with set of member level ids. To use member level id in bit field the level id minus 1 is used as power of 2, for example: 157 157 * - user level id = 1 -> 2^(1-1) = 1 158 158 * - user level id = 2 -> 2^(2-1) = 2 … … 962 962 return $isValid; 963 963 } 964 965 /** 966 * Check if form field is visible. 967 * @param $aInput form field array 968 * @return boolean 969 */ 970 protected function _isVisible ($aInput) { 971 bx_import('BxDolAcl'); 972 echo $aInput['name'] . ' - ' . BxDolAcl::getInstance()->isMemberLevelInSet($aInput['visible_for_levels']) . '<br />'; 973 return BxDolAcl::getInstance()->isMemberLevelInSet($aInput['visible_for_levels']); 974 } 964 975 } 965 976 -
trunk/inc/classes/BxDolFormQuery.php
r15798 r15905 70 70 71 71 // form inputs 72 $sQuery = $oDb->prepare("SELECT `i`.* FROM `sys_form_inputs` AS `i` INNER JOIN `sys_form_display_inputs` AS `d` ON (`d`.`input_name` = `i`.`name`) WHERE `d`.`active` = 1 AND `d`.`display_name` = ? ORDER BY `d`.`order` ASC", $aDisplay['display_name']);72 $sQuery = $oDb->prepare("SELECT `i`.*, `d`.`visible_for_levels` FROM `sys_form_inputs` AS `i` INNER JOIN `sys_form_display_inputs` AS `d` ON (`d`.`input_name` = `i`.`name`) WHERE `d`.`active` = 1 AND `d`.`display_name` = ? ORDER BY `d`.`order` ASC", $aDisplay['display_name']); 73 73 $aInputs = $oDb->getAllWithKey($sQuery, 'name'); 74 74 $aForm['inputs'] = array(); … … 78 78 // main attributes 79 79 $aInput = array ( 80 'type' => $a['type'], 80 'type' => $a['type'], 81 81 'name' => $a['name'], 82 82 'caption' => _t($a['caption']), … … 88 88 'tr_attrs' => $a['attrs_tr'] ? unserialize($a['attrs_tr']) : false, 89 89 'attrs_wrapper' => $a['attrs_wrapper'] ? unserialize($a['attrs_wrapper']) : false, 90 'visible_for_levels' => $a['visible_for_levels'], 90 91 ); 91 92 -
trunk/install/sql/v70.sql
r15903 r15905 4046 4046 `display_name` varchar(32) NOT NULL, 4047 4047 `input_name` varchar(32) NOT NULL, 4048 ` hidden_for_levels` int(10) unsigned NOT NULL,4048 `visible_for_levels` int(11) NOT NULL DEFAULT '2147483647', 4049 4049 `active` tinyint(4) NOT NULL DEFAULT '0', 4050 4050 `order` int(11) NOT NULL, … … 4564 4564 `onclick` varchar(255) NOT NULL, 4565 4565 `target` varchar(255) NOT NULL, 4566 `icon` varchar(255) NOT NULL, 4566 `icon` varchar(255) NOT NULL, 4567 4567 `visible_for_levels` int(11) NOT NULL DEFAULT '2147483647', 4568 4568 `active` tinyint(4) NOT NULL DEFAULT '1', … … 4571 4571 ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 4572 4572 4573 INSERT INTO `sys_menu ` (`set_name`, `module`, `name`, `title`, `link`, `onclick`, `target`, `icon`, `hidden_for_levels`, `active`, `order`) VALUES4574 ('sys_site', 'system', 'home', '_Home', 'index.php', '', '', '', 0, 1, 1),4575 ('sys_site', 'system', 'tags', '_Tags', 'tags.php', '', '', '', 0, 1, 2),4576 ('sys_site', 'system', 'categories', '_Categories', 'categories.php', '', '', '', 0, 1, 3),4577 ('sys_site', 'system', 'join', '_Join', 'join.php', '', '', '', 4294967294, 1, 4),4573 INSERT INTO `sys_menu_items` (`set_name`, `module`, `name`, `title`, `link`, `onclick`, `target`, `icon`, `visible_for_levels`, `active`, `order`) VALUES 4574 ('sys_site', 'system', 'home', '_Home', 'index.php', '', '', '', 2147483647, 1, 1), 4575 ('sys_site', 'system', 'tags', '_Tags', 'tags.php', '', '', '', 2147483647, 1, 2), 4576 ('sys_site', 'system', 'categories', '_Categories', 'categories.php', '', '', '', 2147483647, 1, 3), 4577 ('sys_site', 'system', 'join', '_Join', 'join.php', '', '', '', 1, 1, 4), 4578 4578 ('sys_site', 'system', 'login', '_Login', 'member.php', '', '', '', 1, 1, 5), 4579 ('sys_site', 'system', 'about', '_About', 'about_us.php', '', '', '', 0, 1, 6),4580 ('sys_site', 'system', 'help', '_help', 'help.php', '', '', '', 0, 1, 7),4581 ('sys_site', 'system', 'contact', '_Contact', 'contact.php', '', '', '', 0, 1, 8),4582 ('sys_footer', 'system', 'about', '_About', 'about_us.php', '', '', '', 0, 1, 1),4583 ('sys_footer', 'system', 'help', '_help', 'help.php', '', '', '', 0, 1, 2),4584 ('sys_footer', 'system', 'contact', '_Contact', 'contact.php', '', '', '', 0, 1, 3);4579 ('sys_site', 'system', 'about', '_About', 'about_us.php', '', '', '', 2147483647, 1, 6), 4580 ('sys_site', 'system', 'help', '_help', 'help.php', '', '', '', 2147483647, 1, 7), 4581 ('sys_site', 'system', 'contact', '_Contact', 'contact.php', '', '', '', 2147483647, 1, 8), 4582 ('sys_footer', 'system', 'about', '_About', 'about_us.php', '', '', '', 2147483647, 1, 1), 4583 ('sys_footer', 'system', 'help', '_help', 'help.php', '', '', '', 2147483647, 1, 2), 4584 ('sys_footer', 'system', 'contact', '_Contact', 'contact.php', '', '', '', 2147483647, 1, 3); 4585 4585 4586 4586 -
trunk/samples/BxSampleForm.php
r15835 r15905 82 82 -- SQL dump of form inputs association with form display: 83 83 84 INSERT INTO `sys_form_display_inputs` (`display_name`, `input_name`, ` hidden_for_levels`, `active`, `order`) VALUES85 ('sample_form_objects_add', 'header_contact', 0, 1, 10),86 ('sample_form_objects_add', 'text', 0, 1, 20),87 ('sample_form_objects_add', 'date', 0, 1, 30),88 ('sample_form_objects_add', 'datetime', 0, 1, 40),89 ('sample_form_objects_add', 'number', 0, 1, 50),90 ('sample_form_objects_add', 'checkbox', 0, 1, 60),91 ('sample_form_objects_add', 'file', 0, 1, 70),92 ('sample_form_objects_add', 'image', 0, 1, 80),93 ('sample_form_objects_add', 'password', 0, 1, 90),94 ('sample_form_objects_add', 'slider', 0, 1, 100),95 ('sample_form_objects_add', 'doublerange', 0, 1, 110),96 ('sample_form_objects_add', 'hidden', 0, 1, 120),97 ('sample_form_objects_add', 'switcher', 0, 1, 130),98 ('sample_form_objects_add', 'button', 0, 1, 140),99 ('sample_form_objects_add', 'reset', 0, 1, 150),100 ('sample_form_objects_add', 'submit', 0, 1, 160),101 ('sample_form_objects_add', 'textarea', 0, 1, 170),102 ('sample_form_objects_add', 'select', 0, 1, 180),103 ('sample_form_objects_add', 'select_multiple', 0, 1, 190),104 ('sample_form_objects_add', 'checkbox_set', 0, 1, 200),105 ('sample_form_objects_add', 'radio_set', 0, 1, 210),106 ('sample_form_objects_add', 'input_set', 0, 1, 220),107 ('sample_form_objects_add', 'custom', 0, 1, 230),108 ('sample_form_objects_add', 'captcha', 0, 1, 240),109 ('sample_form_objects_add', 'value', 0, 1, 250),110 ('sample_form_objects_add', 'header_submit', 0, 1, 1000),111 ('sample_form_objects_add', 'do_submit', 0, 1, 1001),112 ('sample_form_objects_edit', 'id', 0, 1, 10),113 ('sample_form_objects_edit', 'text', 0, 0, 20),114 ('sample_form_objects_edit', 'date', 0, 1, 30),115 ('sample_form_objects_edit', 'datetime', 0, 1, 40),116 ('sample_form_objects_edit', 'number', 0, 1, 50),117 ('sample_form_objects_edit', 'checkbox', 0, 1, 60),118 ('sample_form_objects_edit', 'password', 0, 1, 70),119 ('sample_form_objects_edit', 'slider', 0, 1, 80),120 ('sample_form_objects_edit', 'doublerange', 0, 1, 90),121 ('sample_form_objects_edit', 'switcher', 0, 1, 100),122 ('sample_form_objects_edit', 'textarea', 0, 1, 110),123 ('sample_form_objects_edit', 'select', 0, 1, 120),124 ('sample_form_objects_edit', 'select_multiple', 0, 1, 130),125 ('sample_form_objects_edit', 'checkbox_set', 0, 1, 140),126 ('sample_form_objects_edit', 'radio_set', 0, 1, 150),127 ('sample_form_objects_edit', 'custom', 0, 1, 160),128 ('sample_form_objects_edit', 'do_submit', 0, 1, 1000);84 INSERT INTO `sys_form_display_inputs` (`display_name`, `input_name`, `visible_for_levels`, `active`, `order`) VALUES 85 ('sample_form_objects_add', 'header_contact', 2147483647, 1, 10), 86 ('sample_form_objects_add', 'text', 2147483647, 1, 20), 87 ('sample_form_objects_add', 'date', 2147483647, 1, 30), 88 ('sample_form_objects_add', 'datetime', 2147483647, 1, 40), 89 ('sample_form_objects_add', 'number', 2147483647, 1, 50), 90 ('sample_form_objects_add', 'checkbox', 2147483647, 1, 60), 91 ('sample_form_objects_add', 'file', 2147483647, 1, 70), 92 ('sample_form_objects_add', 'image', 2147483647, 1, 80), 93 ('sample_form_objects_add', 'password', 2147483647, 1, 90), 94 ('sample_form_objects_add', 'slider', 2147483647, 1, 100), 95 ('sample_form_objects_add', 'doublerange', 2147483647, 1, 110), 96 ('sample_form_objects_add', 'hidden', 2147483647, 1, 120), 97 ('sample_form_objects_add', 'switcher', 2147483647, 1, 130), 98 ('sample_form_objects_add', 'button', 2147483647, 1, 140), 99 ('sample_form_objects_add', 'reset', 2147483647, 1, 150), 100 ('sample_form_objects_add', 'submit', 2147483647, 1, 160), 101 ('sample_form_objects_add', 'textarea', 2147483647, 1, 170), 102 ('sample_form_objects_add', 'select', 2147483647, 1, 180), 103 ('sample_form_objects_add', 'select_multiple', 2147483647, 1, 190), 104 ('sample_form_objects_add', 'checkbox_set', 2147483647, 1, 200), 105 ('sample_form_objects_add', 'radio_set', 2147483647, 1, 210), 106 ('sample_form_objects_add', 'input_set', 2147483647, 1, 220), 107 ('sample_form_objects_add', 'custom', 2147483647, 1, 230), 108 ('sample_form_objects_add', 'captcha', 2147483647, 1, 240), 109 ('sample_form_objects_add', 'value', 2147483647, 1, 250), 110 ('sample_form_objects_add', 'header_submit', 2147483647, 1, 1000), 111 ('sample_form_objects_add', 'do_submit', 2147483647, 1, 1001), 112 ('sample_form_objects_edit', 'id', 2147483647, 1, 10), 113 ('sample_form_objects_edit', 'text', 2147483647, 0, 20), 114 ('sample_form_objects_edit', 'date', 2147483647, 1, 30), 115 ('sample_form_objects_edit', 'datetime', 2147483647, 1, 40), 116 ('sample_form_objects_edit', 'number', 2147483647, 1, 50), 117 ('sample_form_objects_edit', 'checkbox', 2147483647, 1, 60), 118 ('sample_form_objects_edit', 'password', 2147483647, 1, 70), 119 ('sample_form_objects_edit', 'slider', 2147483647, 1, 80), 120 ('sample_form_objects_edit', 'doublerange', 2147483647, 1, 90), 121 ('sample_form_objects_edit', 'switcher', 2147483647, 1, 100), 122 ('sample_form_objects_edit', 'textarea', 2147483647, 1, 110), 123 ('sample_form_objects_edit', 'select', 2147483647, 1, 120), 124 ('sample_form_objects_edit', 'select_multiple', 2147483647, 1, 130), 125 ('sample_form_objects_edit', 'checkbox_set', 2147483647, 1, 140), 126 ('sample_form_objects_edit', 'radio_set', 2147483647, 1, 150), 127 ('sample_form_objects_edit', 'custom', 2147483647, 1, 160), 128 ('sample_form_objects_edit', 'do_submit', 2147483647, 1, 1000); 129 129 130 130 */ -
trunk/studio/classes/BxDolStudioFormsQuery.php
r15902 r15905 122 122 `ti`.`type` AS `type`, 123 123 `ti`.`caption` AS `caption`, 124 `tdi`.` hidden_for_levels` AS `hidden_for_levels`,124 `tdi`.`visible_for_levels` AS `visible_for_levels`, 125 125 `tdi`.`active` AS `active`, 126 126 `tdi`.`order` AS `order`"; -
trunk/templates/base/scripts/BxBaseFormView.php
r15879 r15905 144 144 'name' => 'csrf_token', 145 145 'value' => $mixedCsrfToken, 146 'db' => array ( 147 'pass' => 'Xss', 148 ) 146 'db' => array ('pass' => 'Xss'), 147 'visible_for_levels' => PHP_INT_MAX, 149 148 ); 150 149 } … … 163 162 $sCont = ''; 164 163 foreach ($this->aInputs as $aInput) 165 $sCont .= $this->genRow($aInput); 164 if ($this->_isVisible($aInput)) 165 $sCont .= $this->genRow($aInput); 166 166 167 167 $sCloseSection = $this->getCloseSection();
Note: See TracChangeset
for help on using the changeset viewer.