/application/libraries/Custom.php

https://github.com/jamesming/stage_cms · PHP · 506 lines · 269 code · 207 blank · 30 comment · 15 complexity · 6c758f309b86af2b4b838f36059d779a MD5 · raw file

  1. <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  2. /**
  3. * Custom Library Related to SceneCredit
  4. * @autoloaded YES
  5. * @path \system\application\libraries\Custom.php
  6. * @package BackEnd
  7. * @author James Ming <jamesming@gmail.com>
  8. * @copyright 2010 Prospace LLC
  9. * @version 1.0
  10. *
  11. */
  12. class Custom {
  13. private $CI; // CodeIgniter instance
  14. function custom(){
  15. $this->CI =& get_instance();
  16. }
  17. function prepare_carousel_items( $segment4, $get_array){
  18. switch ( $segment4 ) {
  19. case 'items':
  20. $carousel_items = $this->CI->query->get_carousel_items();
  21. $data['carousel_items'] = $carousel_items;
  22. break;
  23. case 'sets':
  24. $data['carousel_sets'] = $this->CI->query->get_carousel_sets( );
  25. break;
  26. };
  27. $data['segment4'] = $segment4;
  28. $data['segment3'] = 'carousel';
  29. return $data;
  30. }
  31. function prepare_nu_spotlight_items( $segment4, $get_array){
  32. switch ( $segment4 ) {
  33. case 'items':
  34. $nu_spotlight_items = $this->CI->query->get_nu_spotlight_items();
  35. $data['nu_spotlight_items'] = $nu_spotlight_items;
  36. break;
  37. case 'sets':
  38. $data['nu_spotlight_sets'] = $this->CI->query->get_nu_spotlight_sets( );
  39. break;
  40. };
  41. $data['segment4'] = $segment4;
  42. $data['segment3'] = 'nu_spotlight';
  43. return $data;
  44. }
  45. function prepare_feature_items( $segment4, $get_array){
  46. $feature_items = $this->CI->query->get_feature_items(
  47. $where_array = array(
  48. 'deactivate !=' => '1'
  49. ));
  50. $data['feature_items'] = $feature_items;
  51. $data['segment4'] = $segment4;
  52. $data['segment3'] = 'feature';
  53. return $data;
  54. }
  55. function prepare_event_items( $segment4, $get_array){
  56. $event_items = $this->CI->query->get_event_items(
  57. $where_array = array(
  58. 'deactivate !=' => '1'
  59. ));
  60. $data['event_items'] = $event_items;
  61. $data['segment4'] = $segment4;
  62. $data['segment3'] = 'event';
  63. return $data;
  64. }
  65. function prepare_showpage_items( $segment4, $get_array){
  66. $showpage_items = $this->CI->query->get_showpage_items(
  67. $where_array = array(
  68. 'deactivate !=' => '1'
  69. )
  70. );
  71. $data['showpage_items'] = $showpage_items;
  72. $data['segment4'] = $segment4;
  73. $data['segment3'] = 'showpage';
  74. return $data;
  75. }
  76. function prepare_showpage_cast_items( $segment4, $get_array){
  77. $showpage_cast_items = $this->CI->query->get_showpage_cast_items(
  78. $where_array = array(
  79. 'showpage_cast_items.showpage_item_id' => $get_array['showpage_item_id'],
  80. 'showpage_cast_items_images.image_type_id' => 13,
  81. 'deactivate !=' => '1'
  82. ),
  83. $select_what = '
  84. showpage_cast_items.id,
  85. showpage_cast_items.name,
  86. content,
  87. short_content,
  88. isHot,
  89. directo,
  90. showpage_cast_items_images.show_on_showpage,
  91. showpage_cast_items_images.order
  92. '
  93. );
  94. $data['showpage_cast_items'] = $showpage_cast_items;
  95. $data['showpage_item_id'] = $get_array['showpage_item_id'];
  96. $data['segment4'] = $segment4;
  97. $data['segment3'] = 'showpage_cast';
  98. return $data;
  99. }
  100. function prepare_showpage_episodes_items( $segment4, $get_array){
  101. $showpage_episodes_items = $this->CI->query->get_showpage_episodes_items(
  102. array('showpage_item_id' => $get_array['showpage_item_id'])
  103. );
  104. $data['showpage_episodes_items'] = $showpage_episodes_items;
  105. $data['showpage_item_id'] = $get_array['showpage_item_id'];
  106. $data['segment4'] = $segment4;
  107. $data['segment3'] = 'showpage_episodes';
  108. return $data;
  109. }
  110. function prepare_showpage_photos_items( $segment4, $get_array){
  111. $showpage_photos_items = $this->CI->query->get_showpage_photos_items(
  112. array('showpage_item_id' => $get_array['showpage_item_id'])
  113. );
  114. $data['showpage_photos_items'] = $showpage_photos_items;
  115. $data['showpage_item_id'] = $get_array['showpage_item_id'];
  116. $data['segment4'] = $segment4;
  117. $data['segment3'] = 'showpage_photos';
  118. return $data;
  119. }
  120. function prepare_showpage_mobile_gallery_photo_items( $segment4, $get_array){
  121. $showpage_mobile_gallery_photo_items = $this->CI->query->get_showpage_mobile_gallery_photo_items(
  122. array('showpage_item_id' => $get_array['showpage_item_id'])
  123. );
  124. $data['showpage_mobile_gallery_photo_items'] = $showpage_mobile_gallery_photo_items;
  125. $data['showpage_item_id'] = $get_array['showpage_item_id'];
  126. $data['segment4'] = $segment4;
  127. $data['segment3'] = 'showpage_mobile_gallery_photo';
  128. return $data;
  129. }
  130. function prepare_showpage_android_gallery_photo_items( $segment4, $get_array){
  131. $showpage_android_gallery_photo_items = $this->CI->query->get_showpage_android_gallery_photo_items(
  132. array('showpage_item_id' => $get_array['showpage_item_id'])
  133. );
  134. $data['showpage_android_gallery_photo_items'] = $showpage_android_gallery_photo_items;
  135. $data['showpage_item_id'] = $get_array['showpage_item_id'];
  136. $data['segment4'] = $segment4;
  137. $data['segment3'] = 'showpage_android_gallery_photo';
  138. return $data;
  139. }
  140. function prepare_showpage_feature_items( $segment4, $get_array){
  141. $showpage_feature_items = $this->CI->query->get_showpage_feature_items(
  142. array(
  143. 'showpage_item_id' => $get_array['showpage_item_id'],
  144. 'deactivate !=' => '1')
  145. );
  146. $data['showpage_feature_items'] = $showpage_feature_items;
  147. $data['showpage_item_id'] = $get_array['showpage_item_id'];
  148. $data['segment4'] = $segment4;
  149. $data['segment3'] = 'showpage_feature';
  150. return $data;
  151. }
  152. function prepare_calendar($get_array){
  153. if( $get_array['year']){
  154. $data['year'] = $get_array['year'];
  155. }else{
  156. $data['year'] = date("Y");
  157. };
  158. if( $get_array['goto_month']){
  159. $data['month'] = $get_array['goto_month'];
  160. }else{
  161. $data['month'] = date("m");
  162. };
  163. $time = time();
  164. $data['today'] = date('j',$time);
  165. $data['prev_or_next'] = array(
  166. "<b class='directional_control' onclick=switch_month('last')>&laquo;</b>" => "",
  167. "<b class='directional_control' onclick=switch_month('next')>&raquo;</b>" => ""
  168. );
  169. $data['last'] = $data['month'] - 1;
  170. $data['next'] = $data['month'] + 1;
  171. if( $data['next'] == 14){
  172. $data['next'] = 2;
  173. $data['month'] = 1;
  174. $data['year'] = $data['year'] + 1;
  175. };
  176. if( $data['last'] == -1){
  177. $data['last'] = 11;
  178. $data['month'] = 12;
  179. $data['year'] = $data['year'] - 1;
  180. };
  181. $data['nu_spotlight_sets_calendars'] = $this->CI->query->get_nu_spotlight_sets_calendars(
  182. $month = $data['month'],
  183. $year = $data['year']
  184. );
  185. $data['carousel_sets_calendars'] = $this->CI->query->get_carousel_sets_calendars(
  186. $month = $data['month'],
  187. $year = $data['year']
  188. );
  189. $data['nu_spotlight_videos_calendars'] = $this->CI->query->get_nu_spotlight_videos_calendars(
  190. $where_array = array(
  191. 'nu_spotlight_videos_calendars.month' => $data['month'],
  192. 'nu_spotlight_videos_calendars.year' => $data['year']
  193. )
  194. );
  195. $data['segment3'] = 'calendar';
  196. return $data;
  197. }
  198. /**
  199. * login_process
  200. * @package BackEnd
  201. * @author James Ming <jamesming@gmail.com>
  202. * @access public
  203. */
  204. public function login_process( $post_array ){
  205. $table = 'users';
  206. if( $post_array['email'] == ''){
  207. return array(
  208. 'is'=>'false',
  209. 'key'=>'email',
  210. 'message'=>'Email field must not be blank.'
  211. );
  212. };
  213. if( $post_array['password'] == ''){
  214. return array(
  215. 'is'=>'false',
  216. 'key'=>'password',
  217. 'message'=>'Password field must not be blank.'
  218. );
  219. };
  220. if( !$this->CI->my_database_model->check_if_exist(
  221. $where_array = array('email' => $post_array['email']),
  222. $table
  223. )){
  224. return array(
  225. 'is'=>'false',
  226. 'key'=>'email',
  227. 'message'=>'Account is not found in system.'
  228. );
  229. }
  230. $where_array = array(
  231. 'email' => $post_array['email'],
  232. 'password' => md5($post_array['password'])
  233. );
  234. $users = $this->CI->my_database_model->select_from_table(
  235. $table,
  236. $select_what = 'id',
  237. $where_array,
  238. $use_order = FALSE,
  239. $order_field = '',
  240. $order_direction = 'desc',
  241. $limit = 1
  242. );
  243. if( count( $users ) > 0 ){
  244. return array(
  245. 'is'=>'true',
  246. 'id'=>$users[0]->id
  247. );
  248. }else{
  249. return array(
  250. 'is'=>'false',
  251. 'key'=>'password',
  252. 'message'=>'Wrong password submitted.'
  253. );
  254. };
  255. }
  256. /**
  257. * get_polls_questions
  258. * @package BackEnd
  259. * @author James Ming <jamesming@gmail.com>
  260. * @access public
  261. */
  262. public function get_polls_questions(){
  263. return $this->CI->my_database_model->select_from_table(
  264. $table = 'polls_questions',
  265. $select_what = '*',
  266. $where_array = array(),
  267. $use_order = TRUE,
  268. $order_field = 'created',
  269. $order_direction = 'desc',
  270. $limit = -1
  271. );
  272. }
  273. /**
  274. * get_responses
  275. * @package BackEnd
  276. * @author James Ming <jamesming@gmail.com>
  277. * @access public
  278. */
  279. public function get_responses(){
  280. $join_array = array(
  281. 'polls_responders' => 'polls_answers.polls_responder_id = polls_responders.id',
  282. 'polls_questions' => 'polls_answers.polls_question_id = polls_questions.id'
  283. );
  284. $polls_answers = $this->CI->my_database_model->select_from_table(
  285. $table = 'polls_answers',
  286. $select_what = 'polls_responders.email, polls_questions.question, polls_answers.answer',
  287. $where_array = array(),
  288. $use_order = TRUE,
  289. $order_field = 'polls_answers.polls_responder_id, polls_answers.polls_question_id',
  290. $order_direction = 'asc',
  291. $limit = -1,
  292. $use_join = TRUE,
  293. $join_array
  294. );
  295. return $polls_answers;
  296. }
  297. }
  298. /* End of file Query.php */
  299. /* Location: \system\application\libraries\Custom.php */