From 823d71ced9b4947b1a5a5ade7245d521ed490061 Mon Sep 17 00:00:00 2001 From: emkael Date: Tue, 7 Jun 2016 15:17:49 +0200 Subject: * renaming php directory --- app/frontend/model/Calendar.php | 92 +++++++++++++++++++++++++++++++++++ app/frontend/model/Category.php | 30 ++++++++++++ app/frontend/model/Entry.php | 43 ++++++++++++++++ app/frontend/model/User.php | 36 ++++++++++++++ app/frontend/model/UserPreference.php | 23 +++++++++ app/frontend/model/config.xml | 9 ++++ 6 files changed, 233 insertions(+) create mode 100644 app/frontend/model/Calendar.php create mode 100644 app/frontend/model/Category.php create mode 100644 app/frontend/model/Entry.php create mode 100644 app/frontend/model/User.php create mode 100644 app/frontend/model/UserPreference.php create mode 100644 app/frontend/model/config.xml (limited to 'app/frontend/model') diff --git a/app/frontend/model/Calendar.php b/app/frontend/model/Calendar.php new file mode 100644 index 0000000..b49bf92 --- /dev/null +++ b/app/frontend/model/Calendar.php @@ -0,0 +1,92 @@ + 'UID', + 'url' => 'Url', + 'name' => 'Name', + 'website' => 'Website', + 'visible' => 'Visible', + 'last_updated' => 'LastUpdated', + 'custom_name' => 'CustomName', + 'custom_image' => 'CustomImage', + 'custom_url' => 'CustomUrl', + '_category' => 'CategoryID' + ]; + + public static $RELATIONS = [ + 'Entries' => [self::HAS_MANY, 'Entry', '_calendar'], + 'Category' => [self::BELONGS_TO, 'Category', '_category'] + ]; + + public static function finder($className=__CLASS__) { + return parent::finder($className); + } + + const CUSTOM_IMAGE_PATH = 'resources/images/calendars'; + + public function getCustomImageUrl() { + if ($this->CustomImage) { + if (!preg_match('#^//#', $this->CustomImage)) { + return Prado::getApplication()->getAssetManager()->publishFilePath( + implode( + DIRECTORY_SEPARATOR, + [ + Prado::getApplication()->getBasePath(), + self::CUSTOM_IMAGE_PATH, + $this->CustomImage + ] + ), + TRUE + ); + } + return $this->CustomImage; + } + } + + public function getCustomImagePath($forFile = NULL, $type = '') { + $pathParts = [ + Prado::getApplication()->getBasePath(), + self::CUSTOM_IMAGE_PATH + ]; + if ($forFile) { + $pathParts[] = $this->_getCustomImageHash($forFile, $type); + } + return implode(DIRECTORY_SEPARATOR, $pathParts); + } + + private function _getCustomImageHash($file, $type) { + $hash = md5($file . md5_file($file) . filemtime($file)); + if ($type) { + $hash .= '.' . preg_replace('#^image/#', '', $type); + } + return $hash; + } + + public function saveData($data) { + $this->copyFrom($data); + return $this->save(); + } + +} + +?> diff --git a/app/frontend/model/Category.php b/app/frontend/model/Category.php new file mode 100644 index 0000000..87b97b6 --- /dev/null +++ b/app/frontend/model/Category.php @@ -0,0 +1,30 @@ + 'ID', + 'name' => 'Name', + 'priority' => 'Priority' + ]; + + public static $RELATIONS = [ + 'Calendars' => [self::HAS_MANY, 'Calendar', '_category'] + ]; + + public static function finder($className=__CLASS__) { + return parent::finder($className); + } + +} + +?> diff --git a/app/frontend/model/Entry.php b/app/frontend/model/Entry.php new file mode 100644 index 0000000..4b93f04 --- /dev/null +++ b/app/frontend/model/Entry.php @@ -0,0 +1,43 @@ + 'ID', + 'uid' => 'UID', + 'begin_date' => 'BeginDate', + 'end_date' => 'EndDate', + 'all_day' => 'AllDay', + 'name' => 'Name', + 'location' => 'Location', + 'last_modified' => 'LastModified', + '_calendar' => 'CalendarID' + ]; + + public static $RELATIONS = [ + 'Calendar' => [self::BELONGS_TO, 'Calendar', '_calendar'] + ]; + + public static function finder($className=__CLASS__) { + return parent::finder($className); + } + +} + +?> diff --git a/app/frontend/model/User.php b/app/frontend/model/User.php new file mode 100644 index 0000000..d431183 --- /dev/null +++ b/app/frontend/model/User.php @@ -0,0 +1,36 @@ + 'ID', + 'login' => 'Login', + 'password' => 'Password', + 'is_admin' => 'IsAdmin', + 'timezone' => 'Timezone', + 'last_login' => 'LastLogin' + ]; + + public static $RELATIONS = [ + 'Calendars' => [self::MANY_TO_MANY, 'Calendar', 'user_selections'] + ]; + + public static function finder($className=__CLASS__) { + return parent::finder($className); + } + +} + +?> diff --git a/app/frontend/model/UserPreference.php b/app/frontend/model/UserPreference.php new file mode 100644 index 0000000..90fa221 --- /dev/null +++ b/app/frontend/model/UserPreference.php @@ -0,0 +1,23 @@ + 'UserID', + '_calendar' => 'CalendarID' + ]; + + public static function finder($className=__CLASS__) { + return parent::finder($className); + } + +} + +?> diff --git a/app/frontend/model/config.xml b/app/frontend/model/config.xml new file mode 100644 index 0000000..a729150 --- /dev/null +++ b/app/frontend/model/config.xml @@ -0,0 +1,9 @@ + + + + + + -- cgit v1.2.3