Webylon 3.2 API Docs
  • Package
  • Class
  • Tree
  • Deprecated
  • Download
Version: current
  • 3.2
  • 3.1

Packages

  • 1c
    • exchange
      • catalog
  • auth
  • Booking
  • building
    • company
  • cart
    • shipping
    • steppedcheckout
  • Catalog
    • monument
  • cms
    • assets
    • batchaction
    • batchactions
    • bulkloading
    • comments
    • content
    • core
    • export
    • newsletter
    • publishers
    • reports
    • security
    • tasks
  • Dashboard
  • DataObjectManager
  • event
  • faq
  • forms
    • actions
    • core
    • fields-basic
    • fields-dataless
    • fields-datetime
    • fields-files
    • fields-formatted
    • fields-formattedinput
    • fields-relational
    • fields-structural
    • transformations
    • validators
  • googlesitemaps
  • guestbook
  • installer
  • newsletter
  • None
  • photo
    • gallery
  • PHP
  • polls
  • recaptcha
  • sapphire
    • api
    • bulkloading
    • control
    • core
    • cron
    • dev
    • email
    • fields-formattedinput
    • filesystem
    • formatters
    • forms
    • i18n
    • integration
    • misc
    • model
    • parsers
    • search
    • security
    • tasks
    • testing
    • tools
    • validation
    • view
    • widgets
  • seo
    • open
      • graph
  • sfDateTimePlugin
  • spamprotection
  • stealth
    • captha
  • subsites
  • userform
    • pagetypes
  • userforms
  • webylon
  • widgets

Classes

  • Announcement_Controller
  • AnnouncementHolder_Controller
  • BookingAdminPage_Controller
  • BookingPage_Controller
  • Cart_Controller
  • CartPage_Controller
  • Catalog_Controller
  • CheckoutPage_Controller
  • ChequePayment_Handler
  • ContactsPage_Controller
  • ContentController
  • ContentNegotiator
  • Controller
  • DataObjectManager_Controller
  • DatePickerField_Controller
  • Director
  • DocPage_Controller
  • DocumentsPage_Controller
  • Event_Controller
  • EventHolder_Controller
  • FavoritePage_Controller
  • FileDataObjectManager_Controller
  • FindCyrillic_Controller
  • HomePage_Controller
  • Import1C_Controller
  • ImportCatalog1C_Controller
  • LastDoc_Controller
  • LiveCalendarWidget_Controller
  • MapObject_Controller
  • MapObjectGroup_Controller
  • MapPage_Controller
  • MediawebPage_Controller
  • ModelAsController
  • Monument_Controller
  • MonumentCatalog_Controller
  • MonumentForm_Controller
  • MultiUploadControls
  • NewsArchive_Controller
  • NewsEntry_Controller
  • NewsHolder_Controller
  • Orders1CExchange_Controller
  • Page_Controller
  • Payment_Handler
  • PhotoAlbumManager_Controller
  • Product_Controller
  • ProductSearchPage_Controller
  • ProfilePage_Controller
  • PublHolder_Controller
  • Publication_Controller
  • RatingExtension_Controller
  • RegistrationPage_Controller
  • RemoveOrphanedPagesTask
  • RequestHandler
  • Room_Controller
  • RoomCatalog_Controller
  • RootURLController
  • SapphireInfo
  • Search_Controller
  • Session
  • SimpleOrderPage_Controller
  • SiteMap_Controller
  • Socle_Controller
  • SocleSize_Controller
  • SpecialCatalog_Controller
  • SS_HTTPRequest
  • SS_HTTPResponse
  • StartCatalog_Controller
  • SubsitesSelectorPage_Controller
  • VideoBankPage_Controller

Interfaces

  • NestedController

Exceptions

  • SS_HTTPResponse_Exception
 1 <?php
 2 
 3 class DatePickerField extends DateField 
 4 {
 5     
 6     static $dateFormat = "dd/mm/yy";
 7     
 8     static function HTMLField( $id, $name, $val ) {
 9         return <<<HTML
10             <input type="text" readonly="readonly" id="$id" name="$name" value="$val" /> (<a href="javascript:void(0)" rel="clear-btn">clear</a>)
11 HTML;
12     }
13     
14     public static function set_date_format($format)
15     {
16         switch($format) {
17             case "mdy":
18             self::$dateFormat = "mm/dd/yy";
19             break;
20             
21             case "dmy":
22             self::$dateFormat = "dd/mm/yy";
23             break;
24             
25             default:
26             self::$dateFormat = "dd/mm/yy";
27             break;
28         }
29     }
30     
31     public static function dmy()
32     {
33         return self::$dateFormat == "dd/mm/yy";
34     }
35     
36     public static function mdy()
37     {
38         return self::$dateFormat == "mm/dd/yy";
39     }
40     
41     function setValue($val) {
42         if(is_string($val) && preg_match('/^([\d]{2,4})-([\d]{1,2})-([\d]{1,2})/', $val)) {
43             $this->value = self::mdy() ? 
44                 preg_replace('/^([\d]{2,4})-([\d]{1,2})-([\d]{1,2})/','\\2/\\3/\\1', $val) :
45                 preg_replace('/^([\d]{2,4})-([\d]{1,2})-([\d]{1,2})/','\\3/\\2/\\1', $val);     
46         } else {
47             $this->value = $val;
48         }
49     }
50     
51     function dataValue() {
52         if(is_array($this->value)) {
53             if(isset($this->value['Year']) && isset($this->value['Month']) && isset($this->value['Day'])) {
54                 return $this->value['Year'] . '-' . $this->value['Month'] . '-' . $this->value['Day'];
55             } else {
56                 user_error("Bad DateField value " . var_export($this->value,true), E_USER_WARNING);
57             }
58         } elseif(preg_match('/^([\d]{1,2})\/([\d]{1,2})\/([\d]{2,4})/', $this->value, $parts)) {
59             return self::mdy() ? "$parts[3]-$parts[1]-$parts[2]" : "$parts[3]-$parts[2]-$parts[1]";
60         } elseif(!empty($this->value)) {
61             return date('Y-m-d', strtotime($this->value));
62         } else {
63             return null;
64         }
65     }
66     
67     
68     function Field() {
69         Requirements::javascript(THIRDPARTY_DIR."/jquery-livequery/jquery.livequery.js");
70         Requirements::javascript(THIRDPARTY_DIR."/jquery-metadata/jquery.metadata.js");
71         Requirements::javascript("dataobject_manager/javascript/dom_jquery_ui.js");
72         Requirements::javascript("dataobject_manager/code/date_picker_field/datepicker_init.js");
73         Requirements::css("dataobject_manager/css/ui/dom_jquery_ui.css");   
74         $id = $this->id();
75         $val = $this->attrValue();
76         $field = parent::Field();
77                 
78         $innerHTML = self::HTMLField( $id, $this->name, $val );
79         
80         return "
81                     <div class=\"datepicker field {dateFormat : '".self::$dateFormat."'}\">
82                         $innerHTML
83                     </div>
84         ";  
85         }
86         
87 }
88 
89 class DatePickerField_Controller extends Controller
90 {
91     function dateformat()
92     {
93       echo DatePickerField::$dateFormat;
94     }
95 }
96 
97 ?>
[Raise a SilverStripe Framework issue/bug](https://github.com/silverstripe/silverstripe-framework/issues/new)
- [Raise a SilverStripe CMS issue/bug](https://github.com/silverstripe/silverstripe-cms/issues/new)
- Please use the Silverstripe Forums to ask development related questions. -
Webylon 3.2 API Docs API documentation generated by ApiGen 2.8.0