Thread: [Pieforms-commit] SF.net SVN: pieforms: [57] pieforms-php5/trunk/src/pieform/elements/expiry. php
Status: Alpha
Brought to you by:
oracleshinoda
From: <ora...@us...> - 2006-11-21 01:34:59
|
Revision: 57 http://svn.sourceforge.net/pieforms/?rev=57&view=rev Author: oracleshinoda Date: 2006-11-20 17:34:59 -0800 (Mon, 20 Nov 2006) Log Message: ----------- Properly output js for disableness even when not using ajax post Modified Paths: -------------- pieforms-php5/trunk/src/pieform/elements/expiry.php Modified: pieforms-php5/trunk/src/pieform/elements/expiry.php =================================================================== --- pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-21 01:30:25 UTC (rev 56) +++ pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-21 01:34:59 UTC (rev 57) @@ -110,6 +110,8 @@ } $('{$name}').value = seconds; EOJS; + } + $script .= <<<EOJS if ($('{$name}_units').value == 'noenddate') { $('{$name}_number').disabled = true; @@ -120,10 +122,6 @@ } </script> EOJS; - } - else { - $script = ''; - } return $numberinput . $uselect . $hidden . $script; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ora...@us...> - 2006-11-21 01:53:21
|
Revision: 58 http://svn.sourceforge.net/pieforms/?rev=58&view=rev Author: oracleshinoda Date: 2006-11-20 17:53:20 -0800 (Mon, 20 Nov 2006) Log Message: ----------- Output onchange and disabled attributes also Modified Paths: -------------- pieforms-php5/trunk/src/pieform/elements/expiry.php Modified: pieforms-php5/trunk/src/pieform/elements/expiry.php =================================================================== --- pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-21 01:34:59 UTC (rev 57) +++ pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-21 01:53:20 UTC (rev 58) @@ -64,17 +64,18 @@ $seconds = null; } + // @todo probably create with an actual input element, as tabindex doesn't work here for one thing $numberinput = '<input '; if ($form->get_ajaxpost()) { $numberinput .= 'onchange="' . $name . '_change()"'; - $numberinput .= $values['units'] == 'noenddate' ? ' disabled="disabled"' : ''; } + $numberinput .= $values['units'] == 'noenddate' ? ' disabled="disabled"' : ''; $numberinput .= 'type="text" size="4" ' . 'name="' . $name . '_number" '; $numberinput .= 'id="' . $name . '_number" value="' . $values['number'] . "\">\n"; $allunits = get_expiry_units(); - $uselect = '<select ' . ($form->get_ajaxpost() ? 'onchange="' . $name . '_change()" ' : ''); + $uselect = '<select onchange="' . $name . '_change()" '; $uselect .= 'name="' . $name . '_units" id="' . $name . '_units"' . ">\n"; foreach ($allunits as $u) { $uselect .= "\t<option value=\"$u\"" . (($values['units'] == $u) ? ' selected="selected"' : '') . '>' . $form->i18n($u) . "</option>\n"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ora...@us...> - 2006-11-21 22:27:00
|
Revision: 62 http://svn.sourceforge.net/pieforms/?rev=62&view=rev Author: oracleshinoda Date: 2006-11-21 14:26:59 -0800 (Tue, 21 Nov 2006) Log Message: ----------- Attempt to get the expiry element behaving correctly (WRT default values), for getting its own value Modified Paths: -------------- pieforms-php5/trunk/src/pieform/elements/expiry.php Modified: pieforms-php5/trunk/src/pieform/elements/expiry.php =================================================================== --- pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-21 20:53:11 UTC (rev 61) +++ pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-21 22:26:59 UTC (rev 62) @@ -90,7 +90,9 @@ $script = <<<EOJS <script type="text/javascript" language="javascript"> function {$name}_change() { + EOJS; + /* if ($form->get_ajaxpost()) { $script .= <<<EOJS var seconds = null; @@ -110,8 +112,10 @@ seconds = 0; } $('{$name}').value = seconds; + EOJS; } + */ $script .= <<<EOJS if ($('{$name}_units').value == 'noenddate') { @@ -168,20 +172,52 @@ } // /** gets the value explicitly from the request */ -// function pieform_get_value_expiry($element, Pieform $form) { -// $name = $element['name']; -// $global = ($form->get_method() == 'get') ? $_GET : $_POST; -// return $global[$name]; -// //$unit = $global[$name . '_units']; -// //if ($unit == 'noenddate') { -// // return null; -// //} -// //$allunits = get_expiry_units(); -// //$number = $global[$name . '_number']; -// //if (!in_array($unit,$allunits) || $number < 0) { -// // return null; -// //} -// //return $number * seconds_in($unit); -// } +function pieform_get_value_expiry($element, Pieform $form) { + $name = $element['name']; + $global = ($form->get_method() == 'get') ? $_GET : $_POST; + //return $global[$name]; + $unit = $global[$name . '_units']; + if ($unit == 'noenddate') { + return null; + } + $allunits = get_expiry_units(); + $number = $global[$name . '_number']; + if (!in_array($unit,$allunits) || $number < 0) { + return null; + } + return $number * seconds_in($unit); +} +function pieform_get_value_js_expiry($element, Pieform $form) { + $formname = $form->get_name(); + $name = $element['name']; + return <<<EOF + var seconds = null; + //if ($('{$name}_units').value == 'noenddate') { + // seconds = null; + //} + //else { + // if ($('{$name}_number').value > 0) { + // var mult = $('{$name}_number').value * 60 * 60 * 24; + // if ($('{$name}_units').value == 'days') { + // seconds = mult; + // } else if ($('{$name}_units').value == 'weeks') { + // seconds = mult * 7; + // } else if ($('{$name}_units').value == 'months') { + // seconds = mult * 30; + // } else if ($('{$name}_units').value == 'years') { + // seconds = mult * 365; + // } + // } + // else { + // seconds = 0; + // } + //} + //data['{$name}'] = seconds; + data['{$name}_number'] = $('{$name}_number').value; + data['{$name}_units'] = $('{$name}_units').value; + +EOF; +} + ?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ora...@us...> - 2006-11-21 22:39:31
|
Revision: 63 http://svn.sourceforge.net/pieforms/?rev=63&view=rev Author: oracleshinoda Date: 2006-11-21 14:39:16 -0800 (Tue, 21 Nov 2006) Log Message: ----------- A whole bunch of cleanup to the expiry element (whitespace related, and removing cruft caused by last commit Modified Paths: -------------- pieforms-php5/trunk/src/pieform/elements/expiry.php Modified: pieforms-php5/trunk/src/pieform/elements/expiry.php =================================================================== --- pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-21 22:26:59 UTC (rev 62) +++ pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-21 22:39:16 UTC (rev 63) @@ -41,23 +41,20 @@ $global = ($form->get_method() == 'get') ? $_GET : $_POST; - // Get the value of the element for rendering. The values of the - // two inputs are rendered, and the total time in seconds is - // stored in a hidden input. - + // Get the value of the element for rendering. if (isset($element['value'])) { $seconds = $element['value']; - $values = get_expiry_from_seconds($element['value']); + $values = pieform_render_expiry_get_expiry_from_seconds($element['value']); } else if (isset($global[$element['name'] . '_number']) && isset($global[$element['name'] . '_units'])) { $values = array('number' => $global[$element['name'] . '_number'], 'units' => $global[$element['name'] . '_units']); - $seconds = $values['number'] * seconds_in($values['units']); + $seconds = $values['number'] * pieform_render_expiry_seconds_in($values['units']); } else if (isset($element['defaultvalue'])) { $seconds = $element['defaultvalue']; - $values = get_expiry_from_seconds($seconds); + $values = pieform_render_expiry_get_expiry_from_seconds($seconds); } else { $values = array('number' => '', 'units' => 'noenddate'); @@ -65,59 +62,22 @@ } // @todo probably create with an actual input element, as tabindex doesn't work here for one thing - $numberinput = '<input '; - if ($form->get_ajaxpost()) { - $numberinput .= 'onchange="' . $name . '_change()"'; - } + $numberinput = '<input'; $numberinput .= $values['units'] == 'noenddate' ? ' disabled="disabled"' : ''; - $numberinput .= 'type="text" size="4" ' . 'name="' . $name . '_number" '; - $numberinput .= 'id="' . $name . '_number" value="' . $values['number'] . "\">\n"; + $numberinput .= ' type="text" size="4" name="' . $name . '_number"'; + $numberinput .= ' id="' . $name . '_number" value="' . $values['number'] . "\">\n"; - $allunits = get_expiry_units(); - $uselect = '<select onchange="' . $name . '_change()" '; $uselect .= 'name="' . $name . '_units" id="' . $name . '_units"' . ">\n"; - foreach ($allunits as $u) { + foreach (pieform_render_expire_get_expiry_units() as $u) { $uselect .= "\t<option value=\"$u\"" . (($values['units'] == $u) ? ' selected="selected"' : '') . '>' . $form->i18n($u) . "</option>\n"; } $uselect .= "</select>\n"; - // The hidden input contains the value of the expiry in seconds - $hidden = '<input type="hidden" name="' . $name . '" id="' . $name . '" value="' . $seconds . "\">\n"; - - // Every time one of the two inputs is changed, update the number - // of seconds in the hidden input. + // Make sure the input is disabled if "no end date" is selected $script = <<<EOJS <script type="text/javascript" language="javascript"> function {$name}_change() { - -EOJS; - /* - if ($form->get_ajaxpost()) { - $script .= <<<EOJS - var seconds = null; - if ($('{$name}_number').value > 0) { - var mult = $('{$name}_number').value * 60 * 60 * 24; - if ($('{$name}_units').value == 'days') { - seconds = mult; - } else if ($('{$name}_units').value == 'weeks') { - seconds = mult * 7; - } else if ($('{$name}_units').value == 'months') { - seconds = mult * 30; - } else if ($('{$name}_units').value == 'years') { - seconds = mult * 365; - } - } - else { - seconds = 0; - } - $('{$name}').value = seconds; - -EOJS; - } - */ - - $script .= <<<EOJS if ($('{$name}_units').value == 'noenddate') { $('{$name}_number').disabled = true; } @@ -131,11 +91,11 @@ return $numberinput . $uselect . $hidden . $script; } -function get_expiry_units() { - return array('days','weeks','months','years','noenddate'); +function pieform_render_expire_get_expiry_units() { + return array('days', 'weeks', 'months', 'years', 'noenddate'); } -function seconds_in($unit) { +function pieform_render_expiry_seconds_in($unit) { $dayseconds = 60 * 60 * 24; switch ($unit) { case 'days' : return $dayseconds; @@ -146,25 +106,25 @@ } } -function get_expiry_from_seconds($seconds) { +function pieform_render_expiry_get_expiry_from_seconds($seconds) { if ($seconds == null) { return array('number' => '', 'units' => 'noenddate'); } // This needs work to produce sensible values; at the moment it will convert // 60 days into 2 months; 70 days into 7 weeks, etc. - $yearseconds = seconds_in('years'); + $yearseconds = pieform_render_expiry_seconds_in('years'); if ($seconds % $yearseconds == 0 && $seconds > 0) { return array('number' => (int) ($seconds / $yearseconds), 'units' => 'years'); } - $monthseconds = seconds_in('months'); + $monthseconds = pieform_render_expiry_seconds_in('months'); if ($seconds % $monthseconds == 0 && $seconds > 0) { return array('number' => (int) ($seconds / $monthseconds), 'units' => 'months'); } - $weekseconds = seconds_in('weeks'); + $weekseconds = pieform_render_expiry_seconds_in('weeks'); if ($seconds % $weekseconds == 0 && $seconds > 0) { return array('number' => (int) ($seconds / $weekseconds), 'units' => 'weeks'); } - $dayseconds = seconds_in('days'); + $dayseconds = pieform_render_expiry_seconds_in('days'); if ($seconds % $dayseconds == 0) { return array('number' => (int) ($seconds / $dayseconds), 'units' => 'days'); } @@ -180,12 +140,12 @@ if ($unit == 'noenddate') { return null; } - $allunits = get_expiry_units(); + $allunits = pieform_render_expire_get_expiry_units(); $number = $global[$name . '_number']; if (!in_array($unit,$allunits) || $number < 0) { return null; } - return $number * seconds_in($unit); + return $number * pieform_render_expiry_seconds_in($unit); } function pieform_get_value_js_expiry($element, Pieform $form) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ora...@us...> - 2006-11-21 22:44:23
|
Revision: 64 http://svn.sourceforge.net/pieforms/?rev=64&view=rev Author: oracleshinoda Date: 2006-11-21 14:43:47 -0800 (Tue, 21 Nov 2006) Log Message: ----------- Removed the last bit of rubbish from the expiry element Modified Paths: -------------- pieforms-php5/trunk/src/pieform/elements/expiry.php Modified: pieforms-php5/trunk/src/pieform/elements/expiry.php =================================================================== --- pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-21 22:39:16 UTC (rev 63) +++ pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-21 22:43:47 UTC (rev 64) @@ -152,28 +152,6 @@ $formname = $form->get_name(); $name = $element['name']; return <<<EOF - var seconds = null; - //if ($('{$name}_units').value == 'noenddate') { - // seconds = null; - //} - //else { - // if ($('{$name}_number').value > 0) { - // var mult = $('{$name}_number').value * 60 * 60 * 24; - // if ($('{$name}_units').value == 'days') { - // seconds = mult; - // } else if ($('{$name}_units').value == 'weeks') { - // seconds = mult * 7; - // } else if ($('{$name}_units').value == 'months') { - // seconds = mult * 30; - // } else if ($('{$name}_units').value == 'years') { - // seconds = mult * 365; - // } - // } - // else { - // seconds = 0; - // } - //} - //data['{$name}'] = seconds; data['{$name}_number'] = $('{$name}_number').value; data['{$name}_units'] = $('{$name}_units').value; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ora...@us...> - 2006-11-23 01:06:00
|
Revision: 68 http://svn.sourceforge.net/pieforms/?rev=68&view=rev Author: oracleshinoda Date: 2006-11-22 17:06:00 -0800 (Wed, 22 Nov 2006) Log Message: ----------- Removed reference to undefined variable Modified Paths: -------------- pieforms-php5/trunk/src/pieform/elements/expiry.php Modified: pieforms-php5/trunk/src/pieform/elements/expiry.php =================================================================== --- pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-22 20:54:03 UTC (rev 67) +++ pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-11-23 01:06:00 UTC (rev 68) @@ -88,7 +88,7 @@ </script> EOJS; - return $numberinput . $uselect . $hidden . $script; + return $numberinput . $uselect . $script; } function pieform_render_expire_get_expiry_units() { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ora...@us...> - 2006-12-15 01:28:52
|
Revision: 97 http://svn.sourceforge.net/pieforms/?rev=97&view=rev Author: oracleshinoda Date: 2006-12-14 17:28:52 -0800 (Thu, 14 Dec 2006) Log Message: ----------- Temporary fix for tabindex for expiry elements Modified Paths: -------------- pieforms-php5/trunk/src/pieform/elements/expiry.php Modified: pieforms-php5/trunk/src/pieform/elements/expiry.php =================================================================== --- pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-12-15 01:27:49 UTC (rev 96) +++ pieforms-php5/trunk/src/pieform/elements/expiry.php 2006-12-15 01:28:52 UTC (rev 97) @@ -62,13 +62,14 @@ } // @todo probably create with an actual input element, as tabindex doesn't work here for one thing + // Same with the select. And do the events using mochikit signal instead of dom events $numberinput = '<input'; $numberinput .= $values['units'] == 'noenddate' ? ' disabled="disabled"' : ''; $numberinput .= ' type="text" size="4" name="' . $name . '_number"'; - $numberinput .= ' id="' . $name . '_number" value="' . $values['number'] . "\">\n"; + $numberinput .= ' id="' . $name . '_number" value="' . $values['number'] . '" tabindex="' . $element['tabindex'] . "\">\n"; $uselect = '<select onchange="' . $name . '_change()" '; - $uselect .= 'name="' . $name . '_units" id="' . $name . '_units"' . ">\n"; + $uselect .= 'name="' . $name . '_units" id="' . $name . '_units"' . ' tabindex="' . $element['tabindex'] . "\">\n"; foreach (pieform_render_expire_get_expiry_units() as $u) { $uselect .= "\t<option value=\"$u\"" . (($values['units'] == $u) ? ' selected="selected"' : '') . '>' . $form->i18n($u) . "</option>\n"; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |