]> git.llucax.com Git - mecon/intranet.git/blob - sistema/local_lib/HTML_Titulares.php
03d53a0b68c3bcdbf372d67e1dfaeb79a856a5b0
[mecon/intranet.git] / sistema / local_lib / HTML_Titulares.php
1 <?php
2 // vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
3 // +--------------------------------------------------------------------+
4 // |                      Ministerio de Economía                        |
5 // |                             Intranet                              |
6 // +--------------------------------------------------------------------+
7 // | This file is part of Intranet.                                    |
8 // |                                                                    |
9 // | Intranet is free software; you can redistribute it and/or modify  |
10 // | it under the terms of the GNU General Public License as published  |
11 // | by the Free Software Foundation; either version 2 of the License,  |
12 // | or (at your option) any later version.                             |
13 // |                                                                    |
14 // | Intranet is distributed in the hope that it will be useful, but   |
15 // | WITHOUT ANY WARRANTY; without even the implied warranty of         |
16 // | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU   |
17 // | General Public License for more details.                           |
18 // |                                                                    |
19 // | You should have received a copy of the GNU General Public License  |
20 // | along with Hooks; if not, write to the Free Software Foundation,   |
21 // | Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA      |
22 // +--------------------------------------------------------------------+
23 // | Creado: Tue Jul 8 12:37:27 2003                                    |
24 // | Autor:  Gonzalo Merayo <gmeray@mecon.gov.ar>                       |
25 // +--------------------------------------------------------------------+
26 //
27 // $Id: xmi2code.tpl.php 1 2003-06-23 18:29:20Z gmeray $
28 //
29
30 require_once '../../lib/noticia.php';
31 require_once '../local_lib/HTML_Noticia.php';
32 require_once '../../lib/mecondavdb.php';
33 require_once 'AI/GrupoSecciones.php';
34
35 // +X2C includes
36 require_once 'HTML/Table.php';
37 // ~X2C
38
39 // +X2C Class 187 :HTML_Titulares
40 /**
41  * @access public
42  */
43 class HTML_Titulares extends HTML_Table {
44     /**
45      * @var    int $antiguedad
46      * @access public
47      */
48     var $antiguedad = null;
49
50     /**
51      * @var    int $grupo_secciones
52      * @access public
53      */
54     var $grupo_secciones;
55
56     // ~X2C
57
58     // +X2C Operation 190
59     /**
60      * @param  int $grupo_secciones 
61      * @param  int $antiguedad 
62      *
63      * @return void
64      * @access public
65      */
66     function HTML_Titulares($grupo_secciones = null, $antiguedad = null) // ~X2C
67     {
68       parent::HTML_Table(array('width'=>'600', 'border'=>'0', 'cellspacing'=>'0', 'cellpadding' => '0'));
69       $db = MEconDAVDB::Connect();
70       $hoy = new Date();
71       $fecha_nuevo  = $hoy->format('%Y-%m-%d');
72       $query = "SELECT Articles.article_id,
73                         IF(Articles.publication_date > '$fecha_nuevo', 'NUEVA', null)
74                  FROM Articles, ArticlePublicationStates
75                  WHERE Articles.article_publication_state_id =
76                         ArticlePublicationStates.article_publication_state_id
77                  AND ArticlePublicationStates.publication_state_id=5 ";
78       if(!is_null($grupo_secciones))
79       {
80         $db2 = DB::Connect('mysql://intranet:intranet@bal747f/intranet');//FIXME
81         $gs = new AI_GrupoSecciones($grupo_secciones);
82         $gs->cargar($db2);
83         if(count($gs->secciones) > 0)
84             $query .= 'AND Articles.section_id IN('.implode(',', $gs->secciones).') ';
85       }
86       if(!is_null($antiguedad))
87       {
88         $hoy->subtractSeconds(60*60*24*$antiguedad);
89         $fecha_limite = $hoy->format('%Y-%m-%d');
90         $query .=  "AND Articles.publication_date > '$fecha_limite' ";
91       }
92       $query .=  "ORDER BY Articles.publication_date desc";
93       $result = $db->query($query);
94       $this->numero_noticias = $result->numRows();//FIXME no documentado
95       if(DB::isError($result))
96          die($result->getMessage("query mal hecho"));
97       $ht1 = new HTML_Table(array('width'=>'300', 'border'=>'0', 'cellspacing'=>'0', 'cellpadding' => '0'));
98       $ht2 = new HTML_Table(array('width'=>'300', 'border'=>'0', 'cellspacing'=>'0', 'cellpadding' => '0'));
99       $impar = true;
100       while($row = $result->fetchRow())
101       {
102           $n = new noticia($row[0]);
103           if(!isset($this->primera_noticia)) $this->primera_noticia = $n;
104           if(!is_null($grupo_secciones)) $n->seccion = null;
105           $not = new HTML_Noticia($n);
106           $not->setLink("una_noticia.php?numero=$row[0]");
107           if(is_null($grupo_secciones))
108           {
109           //$n->getIdSeccion();
110             $not->setVerMas("noticias?grupo=TODO");//TODO
111           }
112           if($row[1] == 'NUEVA')
113               $not->setNuevo(true);
114           if($impar)
115           {
116               $impar = false;
117               $ht1->addRow(array($not));
118           }
119           else
120           {
121               $impar = true;
122               $ht2->addRow(array($not));
123           }
124       } 
125
126       $this->addRow(array($ht1,$ht2));
127       $this->updateCellAttributes(0,0,array('valign'=>'top'));
128       $this->updateCellAttributes(0,1,array('valign'=>'top'));
129     }
130     // -X2C
131
132     // +X2C Operation 196
133     /**
134      * @return void
135      * @access public
136      */
137     function getCSS() // ~X2C
138     {
139         return "css/noticias.css";
140     }
141     // -X2C
142
143 } // -X2C Class :HTML_Titulares
144 ?>