Revision 528 | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed
<?php/*** @author Lars Tiefland* @copyright 2016*//*** Medien_model** Liest die Bilder von Artikeln oder Kategorien aus** @package WebanOS CI* @author Lars Tiefland* @copyright 2016* @version $Id: Medien_model.php 528 2016-09-15 11:20:18Z lars $* @access public*/class Medien_model extends CI_Model{private $sql;private $formate;private $basis;/*** Medien_model::__construct()** stellt alle nötigen SQL-Abfragen und Formate für die Medien bereit** @return*/public function __construct(){parent::__construct();$this->basis = $this->config->item('base_url');$this->formate = array("" => "","_klein" => "kl/","_mini" => "mini/","_gr" => "gr/","_br" => "br/","_ba" => "ba/","_nav" => "nav/","_sl" => "sl/","_start" => "start/","_icon" => "icon/",);$this->sql["medien"]["artikel"] = "SELECTm.name,m.folder,m.beschreibung,m.typ,am.rang,am.aehnlichFROMmedien mJOINartikel_medien amWHEREam.medien_id=m.idANDartikel_id=?ANDtyp=?ORDER BYrang";$this->sql["medien"]["category"] = "SELECTm.name,m.folder,m.beschreibung,dm.rang,dm.aehnlichFROMmedien mJOINdirectory_medien dmWHEREdm.medien_id=m.idANDdirectory_id=?ANDtyp=?ORDER BYrang";}/*** Medien_model::get_artikel_medien()** Liest alle Medien für einen Artikel aus und erzeugt alle konfigurierten URLs (relativ und absolut)** @param mixed $artikel_id* @param integer $typ* @return*/public function get_artikel_medien($artikel_id, $typ = 1){$medien = array();$am_res = $this->db->query($this->sql["medien"]["artikel"], array($artikel_id,$typ,));if ($am_res->num_rows()){while ($row = $am_res->unbuffered_row('array')){$url = '/images/upload/';$folder = '';if ($row['folder']){$folder = $row['folder'];$ende = substr($folder, -1);if ($ende != '/'){$folder .= '/';}}$url .= $folder;$b_name = $row['name'];foreach ($this->formate as $format => $dir){$row['bild_url'.$format] = $url.$dir.$b_name;$row["abs_bild_url".$format] = $this->basis.$row["bild_url".$format];}$medien[] = $row;}}else{$url = "/images/webelemente/";$b_name = basename($GLOBALS["INI"]["itemKorrektur"]["noImage"]);$row["name"] = $b_name;$row["beschreibung"] = "";$row["folder"] = "";$row["typ"] = "Bild";foreach ($this->formate as $format => $dir){$row["bild_url".$format] = $url.$b_name;$row["abs_bild_url".$format] = $this->basis.$row["bild_url".$format];}$medien[] = $row;}return $medien;}/*** Medien_model::get_category_medien()** Liest alle Medien für eine Kategorie aus und erzeugt alle konfigurierten URLs (relativ und absolut)** @param mixed $category_id* @param integer $typ* @return*/public function get_category_medien($category_id, $typ = 1){$medien = array();$am_res = $this->db->query($this->sql["medien"]["category"], array($category_id,$typ,));if ($am_res->num_rows()){while ($row = $am_res->unbuffered_row('array')){$url = '/images/upload/';$folder = '';if ($row['folder']){$folder = $row['folder'];$ende = substr($folder, -1);if ($ende != '/'){$folder .= '/';}}$url .= $folder;$b_name = $row['name'];foreach ($this->formate as $format => $dir){$row['bild_url'.$format] = $url.$dir.$b_name;$row["abs_bild_url".$format] = $this->basis.$row["bild_url".$format];}$medien[] = $row;}}else{$url = "/images/webelemente/";$b_name = basename($GLOBALS["INI"]["itemKorrektur"]["noImage"]);$row["name"] = $b_name;$row["beschreibung"] = "";$row["folder"] = "";$row["typ"] = "Bild";foreach ($this->formate as $format => $dir){$row["bild_url".$format] = $url.$b_name;$row["abs_bild_url".$format] = $this->basis.$row["bild_url".$format];}$medien[] = $row;}return $medien;}}?>