source: pmb4.1/trunk/fuentes/pmb/cms/modules/recordslist/views/cms_module_recordslist_view_carousel.class.php @ 478

Last change on this file since 478 was 478, checked in by mabarracus, 4 years ago

copy trusty code 4.1

  • Property svn:executable set to *
File size: 3.5 KB
Line 
1<?php
2// +-------------------------------------------------+
3// © 2002-2012 PMB Services / www.sigb.net pmb@sigb.net et contributeurs (voir www.sigb.net)
4// +-------------------------------------------------+
5// $Id: cms_module_recordslist_view_carousel.class.php,v 1.8.2.1 2014-11-21 10:55:13 arenou Exp $
6
7if (stristr($_SERVER['REQUEST_URI'], ".class.php")) die("no access");
8
9class cms_module_recordslist_view_carousel extends cms_module_carousel_view_carousel{
10       
11       
12        public function __construct($id=0){
13                parent::__construct($id);
14        }
15       
16        public function get_form(){
17                $form="
18                <div class='row'>
19                        <div class='colonne3'>
20                                <label for='cms_module_recordslist_view_link'>".$this->format_text($this->msg['cms_module_recordslist_view_link'])."</label>
21                        </div>
22                        <div class='colonne-suite'>";
23                $form.= $this->get_constructor_link_form("notice");
24                $form.="
25                        </div>
26                </div>";
27                $form.= parent::get_form();
28                return $form;
29        }
30       
31        public function save_form(){
32                $this->save_constructor_link_form("notice");
33                return parent::save_form();
34        }
35       
36        public function render($records){
37                $datas = array();
38                global $opac_url_base;
39                global $opac_show_book_pics;
40                global $opac_book_pics_url;
41                global $opac_notice_affichage_class;
42               
43                if(!$opac_notice_affichage_class){
44                        $opac_notice_affichage_class ="notice_affichage";
45                }
46               
47                $query = "select notice_id,tit1,thumbnail_url,code from notices where notice_id in (".implode(",",$records['records']).") order by field( notice_id, ".implode(",",$records['records']).")";
48                $result = mysql_query($query);
49                if(mysql_num_rows($result)){
50                        while($row = mysql_fetch_object($result)){
51                                if ($opac_show_book_pics=='1' && ($opac_book_pics_url || $row->thumbnail_url)) {
52                                        $code_chiffre = pmb_preg_replace('/-|\.| /', '', $row->code);
53                                        $url_image = $opac_book_pics_url ;
54                                        $url_image = $opac_url_base."getimage.php?url_image=".urlencode($url_image)."&noticecode=!!noticecode!!&vigurl=".urlencode($row->thumbnail_url) ;
55                                        if ($row->thumbnail_url){
56                                        $url_vign=$row->thumbnail_url; 
57                                        }else if($code_chiffre){
58                                                $url_vign = str_replace("!!noticecode!!", $code_chiffre, $url_image) ;
59                                        }else {
60                                                $url_vign = $opac_url_base."images/vide.png";                   
61                                        }
62                                }
63                                $notice_class = new $opac_notice_affichage_class($row->notice_id);
64                                $notice_class->do_header();
65                                if($this->parameters['used_template']){
66                                        $tpl = new notice_tpl_gen($this->parameters['used_template']);
67                                        $content = $tpl->build_notice($row->notice_id);
68                                }else{
69                                        $notice_class->do_isbd();
70                                        $content = $notice_class->notice_isbd;
71                                }
72                               
73                               
74                                $datas[] = array(
75                                        'id' => $row->notice_id,
76                                        'title' => $row->tit1,
77                                        'link' => $this->get_constructed_link("notice",$row->notice_id),
78                                        'vign' => $url_vign,
79                                        'header' => $notice_class->notice_header,
80                                        'content' => $content
81                                );
82                               
83                        }
84                }
85                $datas = array(
86                        'title' => $records['title'],
87                        'records' => $datas
88                );
89                return parent::render($datas);
90        }
91       
92        public function get_format_data_structure(){
93                $datas = new cms_module_carousel_datasource_notices();
94                $format_datas = $datas->get_format_data_structure();
95                $format_datas[0]['children'][] = array(
96                                'var' => "records[i].header",
97                                'desc'=> $this->msg['cms_module_common_view_record_header_desc']
98                );
99                $format_datas[0]['children'][] = array(
100                                'var' => "records[i].content",
101                                'desc' => $this->msg['cms_module_carousel_view_carousel_record_content_desc']
102                );
103                $format_datas = array_merge($format_datas,cms_module_common_view_django::get_format_data_structure());
104                return $format_datas;
105        }
106}
Note: See TracBrowser for help on using the repository browser.