BUG 0000 simplify code of datepicker
This commit is contained in:
@@ -3448,9 +3448,7 @@ class XmlForm_Field_Date extends XmlForm_Field_SimpleText
|
|||||||
$endDate = G::replaceDataField ( $this->endDate, $owner->values );
|
$endDate = G::replaceDataField ( $this->endDate, $owner->values );
|
||||||
$beforeDate = G::replaceDataField ( $this->beforeDate, $owner->values );
|
$beforeDate = G::replaceDataField ( $this->beforeDate, $owner->values );
|
||||||
$afterDate = G::replaceDataField ( $this->afterDate, $owner->values );
|
$afterDate = G::replaceDataField ( $this->afterDate, $owner->values );
|
||||||
$valueaux=$value;
|
$defaultValue=$this->defaultValue;
|
||||||
$value=$this->defaultValue;
|
|
||||||
|
|
||||||
if ($startDate != '') {
|
if ($startDate != '') {
|
||||||
if (! $this->verifyDateFormat ( $startDate ))
|
if (! $this->verifyDateFormat ( $startDate ))
|
||||||
$startDate = '';
|
$startDate = '';
|
||||||
@@ -3464,11 +3462,7 @@ class XmlForm_Field_Date extends XmlForm_Field_SimpleText
|
|||||||
if ($startDate == '' && isset ( $this->size ) && is_numeric ( $this->size ) && $this->size >= 1900 && $this->size <= 2100) {
|
if ($startDate == '' && isset ( $this->size ) && is_numeric ( $this->size ) && $this->size >= 1900 && $this->size <= 2100) {
|
||||||
$startDate = $this->size . '-01-01';
|
$startDate = $this->size . '-01-01';
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($startDate == '') {
|
|
||||||
//$startDate = date ( 'Y-m-d' ); // the default is the current date
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($endDate != '') {
|
if ($endDate != '') {
|
||||||
if (! $this->verifyDateFormat ( $endDate ))
|
if (! $this->verifyDateFormat ( $endDate ))
|
||||||
$endDate = '';
|
$endDate = '';
|
||||||
@@ -3495,140 +3489,88 @@ class XmlForm_Field_Date extends XmlForm_Field_SimpleText
|
|||||||
$mask = '%Y-%m-%d'; //set default
|
$mask = '%Y-%m-%d'; //set default
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* - init - Backward compatibility
|
|
||||||
*
|
|
||||||
* By Erik A. O. <erik@colosa.com>
|
|
||||||
* @package gulliver.system
|
|
||||||
*/
|
|
||||||
|
|
||||||
if( strpos($mask, '%') === false ) {
|
if( strpos($mask, '%') === false ) {
|
||||||
if( strpos($mask, '-') !== false ) { // case '-' saparator
|
if( strpos($mask, '-') !== false )
|
||||||
$maskparts = explode('-', $mask);
|
$separator = '-';
|
||||||
$mask = '';
|
if( strpos($mask, '/') !== false )
|
||||||
foreach($maskparts as $part) {
|
$separator = '/';
|
||||||
if($mask != '')
|
if( strpos($mask, '.') !== false )
|
||||||
$mask .= '-';
|
$separator = '.';
|
||||||
if($part=='yyyy')
|
|
||||||
$part='Y';
|
|
||||||
if($part=='dd')
|
|
||||||
$part='d';
|
|
||||||
if($part=='mm')
|
|
||||||
$part='m';
|
|
||||||
if($part=='yy')
|
|
||||||
$part='y';
|
|
||||||
$mask .= '%'.$part;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if( strpos($mask, '/') !== false ) { // case '/' saparator
|
|
||||||
$maskparts = explode('/', $mask);
|
|
||||||
$mask = '';
|
|
||||||
foreach($maskparts as $part) {
|
|
||||||
if($mask != '')
|
|
||||||
$mask .= '/';
|
|
||||||
if($part=='yyyy')
|
|
||||||
$part='Y';
|
|
||||||
if($part=='dd')
|
|
||||||
$part='d';
|
|
||||||
if($part=='mm')
|
|
||||||
$part='m';
|
|
||||||
if($part=='yy')
|
|
||||||
$part='y';
|
|
||||||
$mask .= '%'.$part;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if( strpos($mask, '.') !== false ) { // case '.' saparator
|
$maskparts = explode($separator, $mask);
|
||||||
$maskparts = explode('.', $mask);
|
$mask = '';
|
||||||
$mask = '';
|
foreach($maskparts as $part) {
|
||||||
foreach($maskparts as $part) {
|
if($mask != '')
|
||||||
if($mask != '')
|
$mask .= $separator;
|
||||||
$mask .= '.';
|
if($part=='yyyy')
|
||||||
if($part=='yyyy')
|
|
||||||
$part='Y';
|
$part='Y';
|
||||||
if($part=='dd')
|
if($part=='dd')
|
||||||
$part='d';
|
$part='d';
|
||||||
if($part=='mm')
|
if($part=='mm')
|
||||||
$part='m';
|
$part='m';
|
||||||
if($part=='yy')
|
if($part=='yy')
|
||||||
$part='y';
|
$part='y';
|
||||||
$mask .= '%'.$part;
|
$mask .= '%'.$part;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
/** - end - Backward compatibility **/
|
|
||||||
$tmp = str_replace("%", "", $mask);
|
$tmp = str_replace("%", "", $mask);
|
||||||
if ( trim ($value) == '' or $value == NULL ) {
|
if ( trim ($value) == '' or $value == NULL ) {
|
||||||
$value = ''; //date ($tmp);
|
$value = ''; //date ($tmp);
|
||||||
} else {
|
} else
|
||||||
switch(strtolower($value)){
|
{
|
||||||
case 'today':
|
switch(strtolower($value)){
|
||||||
// $value = date($tmp);
|
case 'today':
|
||||||
$value=masktophp ($mask);
|
$value=masktophp ($mask);// $value = date($tmp);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if(!$this->verifyDateFormat($value))
|
if(!$this->verifyDateFormat($value))
|
||||||
$value='';
|
//$value='';
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
//onchange
|
//onchange
|
||||||
if( isset($this->onchange) && $this->onchange != '' )
|
if( isset($this->onchange) && $this->onchange != '' )
|
||||||
$onchange = 'onchange="'.$this->onchange.'"';
|
$onchange = 'onchange="'.$this->onchange.'"';
|
||||||
else
|
else
|
||||||
$onchange = '';
|
$onchange = '';
|
||||||
|
|
||||||
#the validations field was moved to javascript routines ;)
|
|
||||||
|
|
||||||
if ($this->renderMode == 'edit') {
|
if ($this->renderMode == 'edit') {
|
||||||
if( $startDate=='1969-12-31' ) {
|
$maskleng = strlen($mask);
|
||||||
$startDate='';
|
$hour = '%H';$min = '%M';$sec = '%S';
|
||||||
$endDate='';
|
$sizehour = strpos($mask, $hour);
|
||||||
}
|
$sizemin = strpos($mask, $hour);
|
||||||
$maskleng=strlen($mask);
|
$sizesec = strpos($mask, $hour);
|
||||||
$hour = '%H';$min = '%M';$sec = '%S';
|
$Time = 'false';
|
||||||
$sizehour = strpos($mask, $hour);
|
|
||||||
$sizemin = strpos($mask, $hour);
|
if (($sizehour !== false)&&($sizemin !== false)&&($sizesec !== false)) {
|
||||||
$sizesec = strpos($mask, $hour);
|
$sizeend = $maskleng + 2;
|
||||||
|
$Time = 'true';
|
||||||
$Time = 'false';
|
} else
|
||||||
if (($sizehour !== false)&&($sizemin !== false)&&($sizesec !== false)) {
|
{
|
||||||
$sizeend = $maskleng + 2;
|
|
||||||
$Time = 'true';
|
|
||||||
} else {
|
|
||||||
$sizeend = $maskleng + 2;
|
$sizeend = $maskleng + 2;
|
||||||
}
|
}
|
||||||
|
if ($this->required)
|
||||||
if($valueaux=='today'){
|
$isRequired = '1';
|
||||||
$valueaux=masktophp ($mask);
|
else
|
||||||
}
|
$isRequired = '0';
|
||||||
$value1=$value;
|
if ( $this->editable != "0") {
|
||||||
$value=$valueaux;
|
$html = '<input pm:required="'. $isRequired .'" id="'.$pID.'" name="'.$pID.'" pm:mask="'.$mask.'"'
|
||||||
if(($value==NULL)||($value=='')){
|
. 'pm:start="'.$startDate.'" pm:end="'.$endDate.'" pm:time="'.$Time.'" '.$onchange.' class="module_app_input___gray" size="'.$sizeend.'"'
|
||||||
$value=$value1;
|
. 'value="'.$value.'" pm:defaultvalue="'.$defaultValue.'" required="' . $isRequired . '"/>'
|
||||||
}
|
. '<a onclick="removeValue(\''.$pID.'\'); return false;" style="position:relative;left:-17px;top:5px;" > '
|
||||||
|
. ' <img src="/images/icons_silk/calendar_x_button.png" />'
|
||||||
if ($this->required){
|
. '</a>'
|
||||||
$isRequired = '1';
|
. '<a id="'.$pID.'[btn]" style="position:relative;left:-22px;top:0px;" >'
|
||||||
} else {
|
. ' <img src="/images/pmdateicon.png" border="0" width="12" height="14" />'
|
||||||
$isRequired = '0';
|
. '</a>'
|
||||||
}
|
. '<script>datePicker4("", \''.$pID.'\', \''.$mask.'\', \''.$startDate.'\', \''.$endDate.'\','.$Time.')</script>';
|
||||||
|
} else
|
||||||
if ( $this->editable != "0") {
|
{
|
||||||
$html = '<input pm:required="'. $isRequired .'" id="'.$pID.'" name="'.$pID.'" pm:mask="'.$mask.'" pm:start="'.$startDate.'" pm:end="'.$endDate.'" pm:time="'.$Time.'" '.$onchange.' class="module_app_input___gray" size="'.$sizeend.'" value="'.$value.'" pm:defaultvalue="'.$value1.'" required="' . $isRequired . '"/>'
|
$html = '<input pm:required="'. $isRequired .'" id="'.$pID.'" name="'.$pID.'" pm:mask="'.$mask.'" pm:start="'.$startDate.'"'
|
||||||
. '<a onclick="removeValue(\''.$pID.'\'); return false;" style="position:relative;left:-17px;top:5px;" >'
|
. 'pm:end="'.$endDate.'" pm:time="'.$Time.'" '.$onchange.' class="module_app_input___gray" size="'.$sizeend.'"'
|
||||||
. ' <img src="/images/icons_silk/calendar_x_button.png" />'
|
. 'value="'.$value.'"pm:defaultvalue="'.$defaultValue.'" readonly="readonly" required="' . $isRequired . '"/>'
|
||||||
. '</a>'
|
|
||||||
. '<a id="'.$pID.'[btn]" style="position:relative;left:-22px;top:0px;" >'
|
|
||||||
. ' <img src="/images/pmdateicon.png" border="0" width="12" height="14" />'
|
|
||||||
. '</a>'
|
|
||||||
. '<script>datePicker4("", \''.$pID.'\', \''.$mask.'\', \''.$startDate.'\', \''.$endDate.'\','.$Time.')</script>';
|
|
||||||
} else {
|
|
||||||
$html = '<input pm:required="'. $isRequired .'" id="'.$pID.'" name="'.$pID.'" pm:mask="'.$mask.'" pm:start="'.$startDate.'" pm:end="'.$endDate.'" pm:time="'.$Time.'" '.$onchange.' class="module_app_input___gray" size="'.$sizeend.'" value="'.$value.'"pm:defaultvalue="'.$value1.'" readonly="readonly" required="' . $isRequired . '"/>'
|
|
||||||
. '<a onclick="removeValue(\''.$pID.'\'); return false;" style="position:relative;left:-17px;top:5px;" >'
|
. '<a onclick="removeValue(\''.$pID.'\'); return false;" style="position:relative;left:-17px;top:5px;" >'
|
||||||
. ' <img src="/images/icons_silk/calendar_x_button.png" />'
|
. ' <img src="/images/icons_silk/calendar_x_button.png" />'
|
||||||
. '</a>'
|
. '</a>'
|
||||||
@@ -3637,22 +3579,18 @@ class XmlForm_Field_Date extends XmlForm_Field_SimpleText
|
|||||||
. '</a>'
|
. '</a>'
|
||||||
. '<script>datePicker4("", \''.$pID.'\', \''.$mask.'\', \''.$startDate.'\', \''.$endDate.'\','.$Time.')</script>';
|
. '<script>datePicker4("", \''.$pID.'\', \''.$mask.'\', \''.$startDate.'\', \''.$endDate.'\','.$Time.')</script>';
|
||||||
}
|
}
|
||||||
|
} else
|
||||||
} else {
|
{
|
||||||
//$html = "<span style='border:1;border-color:#000;width:100px;' name='" . $pID . "'>$value</span>";
|
$html = "<span style='border:1;border-color:#000;width:100px;' name='" . $pID . "'>$value</span>"
|
||||||
///-- $html = '<input class="module_app_input___gray" id="form[' . $this->name . ']" name="form[' . $this->name . ']" type ="text" size="' . $this->size . '" ' . (isset ( $this->maxLength ) ? ' maxlength="' . $this->maxLength . '"' : '') . ' value=\'' . htmlentities ( $value, ENT_COMPAT, 'utf-8' ) . '\' style="display:none;' . htmlentities ( $this->style, ENT_COMPAT, 'utf-8' ) . '" />' . htmlentities ( $value, ENT_COMPAT, 'utf-8' );
|
. '<input type="hidden" id="'.$pID.'" name="'.$pID.'" pm:mask="'.$mask.'" pm:start="'.$startDate.'"'
|
||||||
|
. 'pm:end="'.$endDate.'" '.$onchange.' class="module_app_input___gray" value="'.$value.'"/>';
|
||||||
$html = "<span style='border:1;border-color:#000;width:100px;' name='" . $pID . "'>$valueaux</span>";
|
|
||||||
$html .= '<input type="hidden" id="'.$pID.'" name="'.$pID.'" pm:mask="'.$mask.'" pm:start="'.$startDate.'" pm:end="'.$endDate.'" '.$onchange.' class="module_app_input___gray" value="'.$valueaux.'"/>';
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if ($this->gridFieldType == '') $html .= $this->renderHint();
|
if ($this->gridFieldType == '') $html .= $this->renderHint();
|
||||||
return $html;
|
return $html;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Calendar Widget with Javascript Routines
|
* Calendar Widget with Javascript Routines
|
||||||
* @author Erik amaru Ortiz <aortiz@gmail.com, erik@colosa.com>
|
* @author Erik amaru Ortiz <aortiz@gmail.com, erik@colosa.com>
|
||||||
|
|||||||
Reference in New Issue
Block a user