Oviedo José-ph
aprende, genera conocimiento y comparte
   
 
 

Lo prometido es deuda, así que les voy a explicar como instalar el hack para Jaws 0.6 r2 y r3 (no se si funcione en algua versión anterior a la revisión 2), así que ahi les va........

Primero tenemos que instalar el plugin PhooInsert el cual pueden descargarlo de mis tiliches y lo tienen que descompactar en la carpeta de plugins/ despues tienen que abrir su editor de textos favorito y modificar lo siguiente, o si no quieren sufrir modifiquen su carpeta de gadgets/Phoo por este archivo el cual esta parchado con el hack y versión 0.6r3

Se dirigen a la carpeta gadgets/Phoo y abren el archivo PhooModel.php y al final antes del ulitmo } insertan:

 /<strong>
</p>

<ul>
<li class="level2"><span class="li">Get a list of albums ordered by the date
</span></li>
<li class="level2"><span class="li"></span></li>
<li class="level2"><span class="li">_at_access  public
</span></li>
<li class="level2"><span class="li">_at_return  array   A list of available albums (ordered by date) and JawsError on error
</span></li>
<li class="level2"><span class="li">/
</span></li>
<li class="level2"><span class="li">function GetAlbumsByDate ()
</span></li>
</ul>
</li>
<li class="level1"><span class="li">{
</span>
<ul>
<li class="level2"><span class="li">$sql = "SELECT [[phoo_album]].*, COUNT(phoo_image_id) AS howmany
</span>
<ul>
<li class="
level3"><span class="li">FROM [[phoo_album]] LEFT JOIN [[phoo_image_album]]
</span></li>
<li class="
level3"><span class="li">ON [[phoo_album]].id = phoo_album_id
</span></li>
<li class="
level3"><span class="li">GROUP BY [[phoo_album]].id
</span></li>
<li class="
level3"><span class="li">ORDER BY createtime DESC";
</span></li>
</ul>
</li>
</ul>
</li>
<li class="level1"><span class="li">
</span>
<ul>
<li class="level2"><span class="li">$result = $GLOBALS['db']->queryAll($sql);
</span>
<ul>
<li class="level4"><span class="li">if (!JawsError::isError($result)) {
</span></li>
</ul>
</li>
<li class="level3"><span class="li">$ret = array();
</span></li>
<li class="level3"><span class="li">foreach ($result as $row) {
</span>
<ul>
<li class="level4"><span class="li">$r["createtime"] = $GLOBALS['app']->Date->ToISO($row["createtime"]);
</span></li>
<li class="level4"><span class="li">$ret[] = $row;
</span></li>
</ul>
</li>
<li class="level3"><span class="li">}
</span></li>
<li class="level3"><span class="li">return $ret;                       
</span></li>
</ul>
</li>
<li class="level2"><span class="li">} else {
</span>
<ul>
<li class="level3"><span class="li">return new JawsError (_t("PHOO_ERROR_ALBUMSBYDATE"), _t("PHOO_NAME"));
</span></li>
</ul>
</li>
<li class="level2"><span class="li">}
</span></li>
</>
</li>
<li class="level1"><span class="li">}
</span>

 

Ahora tienen que abrir el archivo PhooAdminHTML.php y al final nuevamente (antes de }) agregan

       function BrowsePhoo(){
                $model =& $GLOBALS['app']->LoadGadget('Phoo', 'AdminModel');
            $t =& new JawsTemplate("gadgets/Phoo/templates/");
                $t->Load ("BrowsePhoo.html");
                $t->SetBlock("phoo");

                $albums = $model->GetAlbumsByDate();
                if (!JawsError::IsError ($albums)) {
                        $t->SetBlock ("phoo/photos");

                        $datecombo =& Piwi::CreateWidget('Combo', 'date');
                        $datecombo->SetStyle("width: 200px;");
                        $datecombo->AddOption ("","");
                        $mindate = $model->GetMinDate();
                        if ($mindate) {
                                $maxdate = $model->GetMaxDate();
                                $mindateArray = explode('/', $mindate);
                                $maxdateArray = explode('/', $maxdate);
                                for ($year = $maxdateArray[2]; $year >= $mindateArray[2]; $year--) {
                                        if ($maxdateArray[2] == $mindateArray[2]) {
                                                $mstart = $maxdateArray[0];
                                                $mend = $mindateArray[0];
                                        } else {
                                                if ($year == $maxdateArray[2])
                                                        $mstart = $maxdateArray[0];
                                                else
                                                        $mstart = 12;
                                                if ($year == $mindateArray[2])
                                                        $mend = $mindateArray[0];
                                                else
                                                        $mend = 1;
                                        }
                                        for ($m = $mstart; $m >= $mend; $m--) {
                                                $month = $GLOBALS['app']->Date->MonthString ($m);
                                                $datecombo->AddOption ("{$month} {$year}","{$m}/{$year}");
                                        }
                                }
                        }
                       
                        $t->SetVariable("date",_t("GLOBAL_DATE"));
                        $datecombo->SetDefault (isset($_REQUEST["date"]) ? $_REQUEST["date"] : null);
                        $datecombo->AddEvent (new JSEvent (ON_CHANGE, "selectAllAlbums(); this.form.submit();"));
                        $t->SetVariable("date_combo",$datecombo->Get());

                           $albumcombo =& Piwi::CreateWidget('Combo', 'album[]');
                            $albumcombo->SetID('albums');
                            $albumcombo->SetStyle('width: 200px;');
                            $albumcombo->SetSize(12);
                            $albumcombo->SetMultiple(true);
                            foreach ($albums as $a) {
                                // FIXME: Ugly hack to add title to albumcombo
                                $o =& Piwi::CreateWidget('ComboOption', $a['id'], $GLOBALS['app']->XSS->filter($a['name']));
                                $o->SetTitle(_t('PHOO_NUM_PHOTOS_ALBUM', $a['howmany']) . ' / '.
                                             _t('PHOO_ALBUM_CREATION_DATE', $GLOBALS['app']->Date->Format($a['createtime'])));
                                $albumcombo->_options[$a['id']] = $o;
                            }

                       
                        $albumcombo->SetDefault (isset ($_REQUEST["album"]) ? $_REQUEST["album"] : "");
                        $albumcombo->AddEvent (new JSEvent (ON_CHANGE, "this.form.submit();"));
                        $t->SetVariable("albums",_t("PHOO_ALBUMS"));
                        $script = '';
                        if (empty($_REQUEST["album"])) {
                                $script .= "";
                        }
                        $t->SetVariable("albums_combo",$albumcombo->Get().$script);

                        // Ugly hack to convert $_REQUEST["album"] to array...
                        if ((!empty($_REQUEST["album"])) && (!is_array($_REQUEST["album"]))) {
                                $aux = $_REQUEST["album"];
                                $_REQUEST["album"] = array();
                                $_REQUEST["album"][] = $aux;
                        }
               
                        // Show albums
                        if ((!empty($_REQUEST["album"])) && (is_array($_REQUEST["album"]))) {
                                foreach ($_REQUEST["album"] as $albumId) {
                                        if (!empty($_REQUEST["date"])) {
                                                $aux = explode("/",$_REQUEST["date"]);
                                                $month = $aux[0];
                                                $year = $aux[1];
                                        } else {
                                                $month = null;
                                                $year = null;
                                        }
                                        $album = $model->GetAlbum($albumId, $month, $year);
                                        if (!JawsError::IsError ($album)) {
                                                if ((isset ($album["images"]) &&
                                                         !is_array($album["images"])) &&
                                                        (count($album["images"]) == 0) &&
                                                        (checkdate ($month, 1, $year))) {
                                                                continue;
                                                }
                                                $t->SetBlock ("phoo/photos/albums");
                                                $t->SetVariable ("title", $album["name"]);
                                                $t->SetVariable ("description",$this->ParseText($album["description"]));
                                                $t->SetVariable ("createtime", $GLOBALS['app']->Date->Format($album["createtime"]));
                                               
                                                if ((isset ($album["images"]) && is_array($album["images"])) && (count($album["images"]) > 0)) {
                                                        // Show photos
                                                        foreach ($album["images"] as $img) {
                                                                $t->SetBlock ("phoo/photos/albums/item");
                                                                $t->SetVariable ("url","admin.php?gadget=Phoo&action=BrowsePhoo&image={$img["id"]}&album={$albumId}");
                                                                $t->SetVariable ("image", $img["image"]);
                                                                $t->SetVariable ("name",$img["name"]);
                                                                $t->SetVariable ("album",$img["albumid"]);

                                                                if ($img["published"] == 'N') {
                                                                        $t->SetVariable ("notpublished", _t("PHOO_NOT_PUBLISHED"));
                                } else {
                                                                        $t->SetVariable ("notpublished","");
                                }
                                                                $t->ParseBlock ("phoo/photos/albums/item");
                                                        }
                                                }
                                                $t->ParseBlock ("phoo/photos/albums");
                                        } else {
                                                $GLOBALS["session"]->PushLastResponse (_t("PHOO_INEXISTENT_ALBUM"), RESPONSE_ERROR);
                                        }
                                }
                        }
                       
                        //si ya se selecciono una imagen:
                       
        if (isset($_GET["image"]) && isset($_GET["album"])){
                                //desplegar la foto seleccionada y el form de finalizacion.
                               
                $image$model->GetImage($_REQUEST["image"], $_GET["album"]);

                if (JawsError::IsError ($image)) {
                        $GLOBALS["session"]->PushLastResponse ($image->GetMessage(), RESPONSE_ERROR);
                        JawsHeader::Location ("admin.php?gadget=Phoo&action=Admin");
                }

                $id = $image["id"];
                $filename = $image["original"];
                $title = $image["title"];
                $desc = $image["description"];
                $published = $image["published"];
               
                                $t->SetBlock ("phoo/photos/selected");
                                        $t->SetVariable  ("t_title",_t("PHOO_PHOTO_TITLE"));
                                        $t->SetVariable  ("t_css",_t("PHOO_CSS"));
                                        $t->SetVariable  ("t_size",_t("PHOO_SIZE"));
                                        $t->SetVariable  ("t_thumb",_t("PHOO_THUMBS"));
                                        $t->SetVariable  ("t_medium",_t("PHOO_MEDIUM"));                                                                               
                                       
                                       
                                        $t->SetVariable ("s_image", JawsImage::GetThumbPath($filename));
                                        $t->SetVariable ("s_name", $title);
                                        $t->SetVariable ("s_picture",$id);
                                        $t->SetVariable ("s_album",$_GET["album"]);
                                $t->ParseBlock ("phoo/photos/selected");
                        }

                        $t->ParseBlock("phoo/photos");
                } else {
                        $t->SetBlock ("phoo/noalbums");
                        $t->SetVariable ("message", _t("PHOO_EMPTY_ALBUMSET"));
                        $t->SetVariable("form",$form->Get());
                        $t->ParseBlock ("phoo/noalbums");
                }

                $t->ParseBlock("phoo");
                return $t->Get();
    }
 

Hacen lo mismo en el archivo PhooActions.php y busquen donde diga StandaloneAdminAction y abajito escriben

$actions['BrowsePhoo']             = array('StandaloneAdminAction');
 

Y en la carpeta de idioma agregan tanto en español como en ingles lo siguiente:

languages/es/Phoo.php

define ("_ES_PHOO_CSS", "Clase CSS");
define ("_ES_PHOO_MEDIUM", "Mediana");

 

languages/en/Phoo.php**

define ("_EN_PHOO_CSS", "CSS Class");
define ("_EN_PHOO_MEDIUM", "Medium");
 

Y listo!!.., solo falta que en el administrador de componentes activen el PhooInsert que se utilice en el modulo de Blog.

oviedo | Trucos, PHP | 19 Enero, 10:53am
e-Corona, <> / 19 Enero, 7:38pm  
avatar

Ingeniero, tienes msn? please add me! XD ecorona_at_e-corona_dot_org_dot_

thx

[ Responder (0) ]
oviedo, <> / 20 Enero, 12:50am  
avatar

Yep..., mi msn es cuastecomate @ hotmail

[ Responder (0) ]

Dejar un comentario









Fuentes XML de comentario: RSS | Atom
Campaña Mejor Cámbiese

Principal


Suscribete al servicio sindicalizado de Oviedos.com.mx

Galaxia Linux

Top Blogs México

Conversación

Zulma: Feliz día pequeñito!!

Te amo!!  
oviedo: Hola Sergio, nomas me doy un tiempo ya que he estado super ocupado estos dias con el trabajo y completo el manualito de deny host!.

Saludos!.  
sergio morales: oye brother podrias terminar el tuto de deny host es muy interesante por ahi hay un error el cual
para nada serviria el deny host ya que blokearia el acces ssh

Saludos  
oviedo: Si ya ves ese Javascript con el IE no se llevan bien!! por cierto! si pones codigo Javascript para ver las contraseñas pues mas errores! jaja..., ni pex!! el Jaws bloqueo el codigo tongue.png  
erufenix: Por aquí pasando a saludar orales no pus muchos errores con javascript  
xiam: Que tal, te dejé un comentario pero no salió ni dió mensaje de error, en donde me puedo comunicar contigo?  
jesux: Saludos Olviedos, disculpa una pregunta. Como pones esos pedazos de cóface-smile-big.png igo en tus post ??  
oviedo: Ruth me temo decirte que no tengo ninguna licencia de SCO face-sad.png , porque mejor no te cambias a Linux o algun BSD??, asi no te preocupas por licencias.
Saludos  
Ruth: Hola, oye por favor, me urge una licencia del sco 5.0.7 por favor pasame la que tienes si? si? si? me super urge por favor!!!!  
lucas: les deseo lo mejor  
Zulma: Felíz día Joe face-smile.png
Te amo  
Jacqueline: Hola:
Yo tengo una parejita de xolitos, y estan super lindos tus perros, saludos desde el DF  
Phylevn: Interesante blog..
saludos face-smile-big.png  
Vael: Donde puedo descargar tu tema de jaws. También busco otros que no sean los que vienen en la instalación. Gracias. face-smile.png  
erufenix: Orales pues por aquí pasando a saludar, tenia un buen que no daba vuelta por estos lares, desde que dejo de funcar planet jaws  
FreeDownloas: Gracias por ciertas ayudas. Es un gusto ke la gente comparta conocimiento alrededor del mundo! Acabo de hacer funcionar algunos USB gadgets en VirtualBox  
pepe oviedo: Hola a todos! nuevamente funciona este mini chat!...,
Saludos desde Colima face-smile.png  
:



:

:

Escribe el código Captcha que estás viendo


Categorías

Amigos

Jaime Ramirez Art Blog
Mis Algoritmos
Brenda
Damog
Comic - Gil
Exal
Grupo Linux Colima
Amax
La Cofradía Digital
abcPediatria

Información personal

Mi musica

 
  © Oviedo José-ph
Powered by Jaws Project