Your IP : 216.73.217.53


Current Path : /home/bonneesp/www/components/com_gallery_wd/models/
Upload File :
Current File : /home/bonneesp/www/components/com_gallery_wd/models/gallery_wd.php

<?php
 /**
 * @package Gallery WD
 * @author Web-Dorado
 * @copyright (C) 2014 Web-Dorado. All rights reserved.
 * @license GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 **/
 
defined('_JEXEC') or die('Restricted access');

// import Joomla modelitem library
jimport('joomla.application.component.modelitem');

class gallery_wdModelgallery_wd extends JModelLegacy
{
	
 public function get_theme_row_data($id) {
	$db =JFactory::getDBO();
	   if ($id) {
	$query="SELECT * FROM #__bwg_theme WHERE id=".$db->escape((int)$id);
	}
	else
	{
	$query="SELECT * FROM #__bwg_theme WHERE default_theme=1";

	}
	$db->setQuery($query);
    $row = $db->loadObject();
    return $row;
  }

  public function get_gallery_row_data($id) {
     $db =JFactory::getDBO(); 
	 $query="SELECT * FROM #__bwg_gallery WHERE published=1 AND id=".$db->escape((int)$id);
	 $db->setQuery($query);
     $row = $db->loadObject();

    return $row;
  }
  
  
    public function get_alb_gals_row($id, $albums_per_page, $sort_by, $bwg) {
     $db =JFactory::getDBO(); 
    if (isset($_POST['page_number_' . $bwg]) && $_POST['page_number_' . $bwg]) {
      $limit = ((int) $_POST['page_number_' . $bwg] - 1) * $albums_per_page;
    }
    else {
      $limit = 0;
    }
    if ($albums_per_page) {
      $limit_str = 'LIMIT ' . $limit . ',' . $albums_per_page;
    }
    else {
      $limit_str = '';
    }
	 $query='SELECT #__bwg_album_gallery.*,#__bwg_gallery.published as published FROM #__bwg_album_gallery LEFT JOIN #__bwg_gallery ON #__bwg_album_gallery.alb_gal_id=#__bwg_gallery.id WHERE album_id='.$db->escape((int)$id).' ORDER BY ' . ($sort_by == "RAND()" ? '' : '`') . $sort_by . ($sort_by == "RAND()" ? '' : '`') . ' ASC ' . $limit_str;
    $db->setQuery($query);
	$row = $db->loadObjectList();
    return $row;
  }
  
    
	public function get_album_row_data($id) {
     $db =JFactory::getDBO(); 
	 
	 $query="SELECT * FROM #__bwg_album WHERE published=1 AND id=".$db->escape((int)$id);
	 $db->setQuery($query);
    $row =$db->loadObject();
    //$row->permalink = $this->bwg_create_post($row->name, $row->slug, "album", $id);
    return $row;
  }
  
  
  

 public function get_image_rows_data($id, $images_per_page, $sort_by, $bwg, $type='',$order_by="ASC") {
     $db =JFactory::getDBO();   
	 $bwg_search = ((isset($_POST['bwg_search_' . $bwg]) && htmlspecialchars($_POST['bwg_search_' . $bwg]) != '') ? htmlspecialchars($_POST['bwg_search_' . $bwg]) : '');	 
    if ($bwg_search != '') {
      $where = 'AND alt LIKE "%%' . $bwg_search . '%%"';  
      }
    else {
      $where = '';
    }
	
	 
	 if ($sort_by == 'size' || $sort_by == 'resolution') {
      $sort_by = ' CAST(' . $sort_by . ' AS SIGNED) ';
    }
    elseif (($sort_by != 'alt') && ($sort_by != 'date') && ($sort_by != 'filetype') && ($sort_by != 'RAND()') && ($sort_by != 'filename')) {
      $sort_by = '`order`';
    }
	
	if($sort_by == 'date')
	$sort_by="dateandtime";
	
	if($sort_by == 'random')
	$sort_by = 'RAND()';
	
	
	
    if (isset($_POST['page_number_' . $bwg]) && $_POST['page_number_' . $bwg]) {
      $limit = ((int) $_POST['page_number_' . $bwg] - 1) * $images_per_page;
    }
    else {
      $limit = 0;
    }
    if ($images_per_page) {
      $limit_str = 'LIMIT ' . $limit . ',' . $images_per_page;
    }
    else {
      $limit_str = '';
    }
	
	
	if($type == 'tag') {
      $query = 'SELECT image.* FROM #__bwg_image as image INNER JOIN #__bwg_image_tag as tag ON image.id=tag.image_id WHERE image.published=1 AND tag.tag_id='.$db->escape((int)$id).' ORDER BY ' . $sort_by . ' ASC';      
    }
	else
	{
	$query='SELECT *,STR_TO_DATE(date, "%d %M %Y,%H:%i") as dateandtime  FROM #__bwg_image WHERE published=1 ' . $where . ' AND gallery_id='.$db->escape((int)$id).' ORDER BY ' . $sort_by . ' '.$order_by.' ' . $limit_str;
	}
	$db->setQuery($query);
    $row = $db->loadObjectList();
    return $row;
  }
  
  
  
    public function gallery_page_nav($id, $images_per_page, $bwg) {
    $db =JFactory::getDBO(); 
	$query="SELECT COUNT(*) FROM #__bwg_image WHERE published=1 AND gallery_id=".$db->escape((int)$id);
	$db->setQuery($query);
	$total=$db->loadResult();
    $page_nav['total'] = $total;
    if (isset($_POST['page_number_' . $bwg]) && $_POST['page_number_' . $bwg]) {
      $limit = ((int) $_POST['page_number_' . $bwg] - 1) * $images_per_page;
    }
    else {
      $limit = 0;
    }
    if ($images_per_page) {
      $page_nav['limit'] = (int) ($limit / $images_per_page + 1);
    }
    return $page_nav;
  }
  
  
    public function album_page_nav($id, $albums_per_page, $bwg) {
    $db =JFactory::getDBO(); 
	$query="SELECT COUNT(*) FROM #__bwg_album_gallery LEFT JOIN #__bwg_gallery ON #__bwg_album_gallery.alb_gal_id=#__bwg_gallery.id WHERE  album_id=".$db->escape((int)$id)." AND published=1";
	$db->setQuery($query);
	$total=$db->loadResult();
    $page_nav['total'] = $total;
    if (isset($_POST['page_number_' . $bwg]) && $_POST['page_number_' . $bwg]) {
      $limit = ((int) $_POST['page_number_' . $bwg] - 1) * $albums_per_page;
    }
    else {
      $limit = 0;
    }
    if ($albums_per_page) {
      $page_nav['limit'] = (int) ($limit / $albums_per_page + 1);
    }
    return $page_nav;
  }
  
  

  public function page_nav($id, $images_per_page, $bwg, $type='') {
     $db =JFactory::getDBO();  
	$bwg_search = ((isset($_POST['bwg_search_' . $bwg]) && htmlspecialchars($_POST['bwg_search_' . $bwg]) != '') ? htmlspecialchars($_POST['bwg_search_' . $bwg]) : '');
    if ($bwg_search != '') {
      $where = 'AND alt LIKE "%%' . $bwg_search . '%%"';  
    }
    else {
      $where = '';
	 }
	if ($type == 'tag') {
      $query = 'SELECT COUNT(*) FROM #__bwg_image as image INNER JOIN #__bwg_image_tag as tag ON image.id=tag.image_id WHERE image.published=1 '. $where .' AND tag.tag_id='.$db->escape((int)$id) ;
    }
	else
	{
    $query="SELECT COUNT(*) FROM #__bwg_image WHERE published=1 ". $where ." AND gallery_id=".$db->escape((int)$id) ;
	}
	$db->setQuery($query);
	$total = $db->loadResult();
    $page_nav['total'] = $total;
    if (isset($_POST['page_number_' . $bwg]) && $_POST['page_number_' . $bwg]) {
      $limit = ((int) $_POST['page_number_' . $bwg] - 1) * $images_per_page;
    }
    else {
      $limit = 0;
    }
    if ($images_per_page) {
      $page_nav['limit'] = (int) ($limit / $images_per_page + 1);
    }
    return $page_nav;
  }
  
  
    
  public function get_options_row_data() {
     $db =JFactory::getDBO();
	 $query="SELECT * FROM #__bwg_option WHERE id=1";
	 $db->setQuery($query);
	$row = $db->loadObject();
	return $row;
  }
  
}