summaryrefslogtreecommitdiff
path: root/tests/FunctionalTests/tickets/protected/pages
diff options
context:
space:
mode:
Diffstat (limited to 'tests/FunctionalTests/tickets/protected/pages')
-rw-r--r--tests/FunctionalTests/tickets/protected/pages/Ticket284.page14
-rw-r--r--tests/FunctionalTests/tickets/protected/pages/Ticket284.php11
-rw-r--r--tests/FunctionalTests/tickets/protected/pages/Ticket284Component.php94
-rw-r--r--tests/FunctionalTests/tickets/protected/pages/Ticket284Component.tpl94
4 files changed, 213 insertions, 0 deletions
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket284.page b/tests/FunctionalTests/tickets/protected/pages/Ticket284.page
new file mode 100644
index 00000000..ff25e3fb
--- /dev/null
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket284.page
@@ -0,0 +1,14 @@
+<com:TContent ID="Content">
+
+
+<com:Application.pages.Ticket284Component ID="fooBar" ShowHours="true" ShowMinutes="true" />
+<com:TCustomValidator
+ ControlToValidate="fooBar"
+ OnServerValidate="checkUserAvailability"
+ Display="Dynamic"
+ Text="Unavailable."
+ CssClass="inlineError" />
+<com:TButton Text="POST it!" />
+
+</com:TContent>
+
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket284.php b/tests/FunctionalTests/tickets/protected/pages/Ticket284.php
new file mode 100644
index 00000000..332789ff
--- /dev/null
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket284.php
@@ -0,0 +1,11 @@
+<?php
+
+class Ticket284 extends TPage
+{
+ function checkUserAvailability()
+ {
+
+ }
+}
+
+?> \ No newline at end of file
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket284Component.php b/tests/FunctionalTests/tickets/protected/pages/Ticket284Component.php
new file mode 100644
index 00000000..892bdc87
--- /dev/null
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket284Component.php
@@ -0,0 +1,94 @@
+<?php
+
+class Ticket284Component extends TTemplateControl implements IValidatable
+{
+ public function onPreRender($param)
+ {
+ if (!$this->ShowHours && $this->ShowMinutes)
+ {
+ throw new TConfigurationException(
+ 'Invalid OPSDatePicker Config: You cannot specify ShowMinutes="true" while ShowHours="false"'
+ );
+ }
+ }
+
+ public function getDatePicker()
+ {
+ $this->ensureChildControls();
+ return $this->getRegisteredObject('datePicker');
+ }
+
+ public function getHourPicker()
+ {
+ $this->ensureChildControls();
+ return $this->getRegisteredObject('hourPicker');
+ }
+
+ public function getMinutePicker()
+ {
+ $this->ensureChildControls();
+ return $this->getRegisteredObject('minutePicker');
+ }
+
+ public function getShowHours()
+ {
+ return $this->HourPicker->Visible;
+ }
+
+ public function setShowHours($value)
+ {
+ $this->HourPicker->Visible = TPropertyValue::ensureBoolean($value);
+ }
+
+ public function getShowMinutes()
+ {
+ return $this->MinutePicker->Visible;
+ }
+
+ public function setShowMinutes($value)
+ {
+ $this->MinutePicker->Visible = TPropertyValue::ensureBoolean($value);
+ }
+
+ public function getTimeStamp()
+ {
+ return strtotime($this->Date);
+ }
+
+ public function setTimeStamp($value)
+ {
+ $ts = TPropertyValue::ensureInteger($value);
+ $this->DatePicker->TimeStamp = $ts;
+ $this->HourPicker->SelectedValue = date('H', $ts);
+ $this->MinutePicker->SelectedValue = date('i', $ts);
+ }
+
+ public function getDate()
+ {
+ $dateStr = $this->DatePicker->Date;
+ if ($this->ShowHours){
+ $dateStr .= ' '.$this->HourPicker->SelectedValue;
+ }
+ if ($this->ShowMinutes){
+ $dateStr .= ':'.$this->MinutePicker->SelectedValue;
+ }
+ return $dateStr;
+ }
+
+ public function setDate($value)
+ {
+ $dateStr = TPropertyValue::ensureString($value);
+ $this->TimeStamp = strtotime($dateStr);
+ }
+
+ public function getValidationPropertyValue()
+ {
+ if ($this->DatePicker->Date === ''){
+ return '';
+ }
+ else{
+ return $this->TimeStamp;
+ }
+ }
+}
+?> \ No newline at end of file
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket284Component.tpl b/tests/FunctionalTests/tickets/protected/pages/Ticket284Component.tpl
new file mode 100644
index 00000000..ed787287
--- /dev/null
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket284Component.tpl
@@ -0,0 +1,94 @@
+<com:TDatePicker ID="datePicker"
+ Style.width="68px"
+ Mode="ImageButton"
+ DateFormat="MM/dd/yyyy" />
+
+<com:TDropDownList ID="hourPicker" Style.width="40px" Visible="false">
+ <com:TListItem Text="00" Value="00" />
+ <com:TListItem Text="01" Value="01" />
+ <com:TListItem Text="02" Value="02" />
+ <com:TListItem Text="03" Value="03" />
+ <com:TListItem Text="04" Value="04" />
+ <com:TListItem Text="05" Value="05" />
+ <com:TListItem Text="06" Value="06" />
+ <com:TListItem Text="07" Value="07" />
+ <com:TListItem Text="08" Value="08" />
+ <com:TListItem Text="09" Value="09" />
+ <com:TListItem Text="10" Value="10" />
+ <com:TListItem Text="11" Value="11" />
+ <com:TListItem Text="12" Value="12" />
+ <com:TListItem Text="13" Value="13" />
+ <com:TListItem Text="14" Value="14" />
+ <com:TListItem Text="15" Value="15" />
+ <com:TListItem Text="16" Value="16" />
+ <com:TListItem Text="17" Value="17" />
+ <com:TListItem Text="18" Value="18" />
+ <com:TListItem Text="19" Value="19" />
+ <com:TListItem Text="20" Value="20" />
+ <com:TListItem Text="21" Value="21" />
+ <com:TListItem Text="22" Value="22" />
+ <com:TListItem Text="23" Value="23" />
+</com:TDropDownList>
+
+<com:TDropDownList ID="minutePicker" Style.width="40px" Visible="false">
+ <com:TListItem Text="00" Value="00" />
+ <com:TListItem Text="01" Value="01" />
+ <com:TListItem Text="02" Value="02" />
+ <com:TListItem Text="03" Value="03" />
+ <com:TListItem Text="04" Value="04" />
+ <com:TListItem Text="05" Value="05" />
+ <com:TListItem Text="06" Value="06" />
+ <com:TListItem Text="07" Value="07" />
+ <com:TListItem Text="08" Value="08" />
+ <com:TListItem Text="09" Value="09" />
+ <com:TListItem Text="10" Value="10" />
+ <com:TListItem Text="11" Value="11" />
+ <com:TListItem Text="12" Value="12" />
+ <com:TListItem Text="13" Value="13" />
+ <com:TListItem Text="14" Value="14" />
+ <com:TListItem Text="15" Value="15" />
+ <com:TListItem Text="16" Value="16" />
+ <com:TListItem Text="17" Value="17" />
+ <com:TListItem Text="18" Value="18" />
+ <com:TListItem Text="19" Value="19" />
+ <com:TListItem Text="20" Value="20" />
+ <com:TListItem Text="21" Value="21" />
+ <com:TListItem Text="22" Value="22" />
+ <com:TListItem Text="23" Value="23" />
+ <com:TListItem Text="24" Value="24" />
+ <com:TListItem Text="25" Value="25" />
+ <com:TListItem Text="26" Value="26" />
+ <com:TListItem Text="27" Value="27" />
+ <com:TListItem Text="28" Value="28" />
+ <com:TListItem Text="29" Value="29" />
+ <com:TListItem Text="30" Value="30" />
+ <com:TListItem Text="31" Value="31" />
+ <com:TListItem Text="32" Value="32" />
+ <com:TListItem Text="33" Value="33" />
+ <com:TListItem Text="34" Value="34" />
+ <com:TListItem Text="35" Value="35" />
+ <com:TListItem Text="36" Value="36" />
+ <com:TListItem Text="37" Value="37" />
+ <com:TListItem Text="38" Value="38" />
+ <com:TListItem Text="39" Value="39" />
+ <com:TListItem Text="40" Value="40" />
+ <com:TListItem Text="41" Value="41" />
+ <com:TListItem Text="42" Value="42" />
+ <com:TListItem Text="43" Value="43" />
+ <com:TListItem Text="44" Value="44" />
+ <com:TListItem Text="45" Value="45" />
+ <com:TListItem Text="46" Value="46" />
+ <com:TListItem Text="47" Value="47" />
+ <com:TListItem Text="48" Value="48" />
+ <com:TListItem Text="49" Value="49" />
+ <com:TListItem Text="50" Value="50" />
+ <com:TListItem Text="51" Value="51" />
+ <com:TListItem Text="52" Value="52" />
+ <com:TListItem Text="53" Value="53" />
+ <com:TListItem Text="54" Value="54" />
+ <com:TListItem Text="55" Value="55" />
+ <com:TListItem Text="56" Value="56" />
+ <com:TListItem Text="57" Value="57" />
+ <com:TListItem Text="58" Value="58" />
+ <com:TListItem Text="59" Value="59" />
+</com:TDropDownList> \ No newline at end of file