/halogy/application/modules/images/models/images_model.php

https://bitbucket.org/haloweb/halogy-1.0/ · PHP · 153 lines · 105 code · 26 blank · 22 comment · 9 complexity · a35fb81a64dee6ecbb6c5fb0b307c93c MD5 · raw file

  1. <?php
  2. /**
  3. * Halogy
  4. *
  5. * A user friendly, modular content management system for PHP 5.0
  6. * Built on CodeIgniter - http://codeigniter.com
  7. *
  8. * @package Halogy
  9. * @author Haloweb Ltd.
  10. * @copyright Copyright (c) 2008-2011, Haloweb Ltd.
  11. * @license http://halogy.com/license
  12. * @link http://halogy.com/
  13. * @since Version 1.0
  14. * @filesource
  15. */
  16. // ------------------------------------------------------------------------
  17. class Images_model extends Model {
  18. function Images_model()
  19. {
  20. parent::Model();
  21. // get siteID, if available
  22. if (defined('SITEID'))
  23. {
  24. $this->siteID = SITEID;
  25. }
  26. }
  27. function search_images($query, $limit = '')
  28. {
  29. if (!$query)
  30. {
  31. return FALSE;
  32. }
  33. $this->db->where(array('siteID' => $this->siteID, 'deleted' => 0));
  34. $this->db->where('(imageRef LIKE "%'.$this->db->escape_like_str($query).'%" OR imageName LIKE "%'.$this->db->escape_like_str($query).'%")');
  35. $this->db->order_by('imageRef', 'asc');
  36. $query = $this->db->get('images', $limit);
  37. if ($query->num_rows())
  38. {
  39. return $query->result_array();
  40. }
  41. else
  42. {
  43. return false;
  44. }
  45. }
  46. function get_images_by_folder_ref($ref, $limit = '')
  47. {
  48. $this->db->where(array('images.siteID' => $this->siteID, 'images.deleted' => 0));
  49. $this->db->where('folderSafe', $ref);
  50. $this->db->select('images.*, folderName, folderSafe');
  51. $this->db->join('image_folders', 'image_folders.folderID = images.folderID');
  52. $this->db->order_by('imageRef', 'asc');
  53. $query = $this->db->get('images', $limit);
  54. if ($query->num_rows())
  55. {
  56. return $query->result_array();
  57. }
  58. else
  59. {
  60. return false;
  61. }
  62. }
  63. function get_folders($folderID = '')
  64. {
  65. // default where
  66. $this->db->where(array('siteID' => $this->siteID, 'deleted' => 0));
  67. $this->db->order_by('folderOrder');
  68. // get based on folder ID
  69. if ($folderID)
  70. {
  71. $query = $this->db->get_where('image_folders', array('folderID' => $folderID), 1);
  72. if ($query->num_rows())
  73. {
  74. return $query->row_array();
  75. }
  76. else
  77. {
  78. return FALSE;
  79. }
  80. }
  81. // or just get all of em
  82. else
  83. {
  84. $query = $this->db->get('image_folders');
  85. if ($query->num_rows())
  86. {
  87. return $query->result_array();
  88. }
  89. else
  90. {
  91. return FALSE;
  92. }
  93. }
  94. }
  95. function lookup_user($userID, $display = FALSE)
  96. {
  97. // default wheres
  98. $this->db->where('userID', $userID);
  99. // grab
  100. $query = $this->db->get('users', 1);
  101. if ($query->num_rows())
  102. {
  103. $row = $query->row_array();
  104. if ($display !== FALSE)
  105. {
  106. return ($row['displayName']) ? $row['displayName'] : $row['firstName'].' '.$row['lastName'];
  107. }
  108. else
  109. {
  110. return $row;
  111. }
  112. }
  113. else
  114. {
  115. return FALSE;
  116. }
  117. }
  118. function update_children($folderID)
  119. {
  120. // update page draft
  121. $this->db->set('folderID', 0);
  122. $this->db->where('siteID', $this->siteID);
  123. $this->db->where('folderID', $folderID);
  124. $this->db->update('images');
  125. return TRUE;
  126. }
  127. }