<commit_before><?php

/**
 * SowerPHP: Minimalist Framework for PHP
 * Copyright (C) SowerPHP (http://sowerphp.org)
 *
 * Este programa es software libre: usted puede redistribuirlo y/o
 * modificarlo bajo los términos de la Licencia Pública General GNU
 * publicada por la Fundación para el Software Libre, ya sea la versión
 * 3 de la Licencia, o (a su elección) cualquier versión posterior de la
 * misma.
 *
 * Este programa se distribuye con la esperanza de que sea útil, pero
 * SIN GARANTÍA ALGUNA; ni siquiera la garantía implícita
 * MERCANTIL o de APTITUD PARA UN PROPÓSITO DETERMINADO.
 * Consulte los detalles de la Licencia Pública General GNU para obtener
 * una información más detallada.
 *
 * Debería haber recibido una copia de la Licencia Pública General GNU
 * junto a este programa.
 * En caso contrario, consulte <http://www.gnu.org/licenses/gpl.html>.
 */

namespace sowerphp\general\Multimedia;

/**
 * Clase para crear una galería de imágenes
 * @author <NAME>, DeLaF (esteban[at]delaf.cl)
 * @version 2014-11-23
 */
class View_Helper_Imagenes
{

    private $_base;

    public function __construct ($dir = null)
    {
        // obtener base
        $this->_base = _BASE;
        // si se indico un directorio se genera e imprime (like TableHelper)
        if ($dir) {
            echo $this->generate($dir);
        }
    }

    public function generate ($dir)
    {
        // buffer para ir dibujando la galería
        $buffer = '';
        // obtener cabecera
        $buffer .= $this->header();
        // inicio de la galería
        $buffer .= '<div id="ImagenesPlugin">';
        // obtener imagenes (si existen miniaturas se usan)
        if(file_exists(DIR_WEBSITE.'/webroot'.$dir.'/miniaturas')) {
            $imagenes = scandir(DIR_WEBSITE.'/webroot'.$dir.'/miniaturas');
            $miniaturas = '/miniaturas';
        } else {
            $imagenes = scandir(DIR_WEBSITE.'/webroot'.$dir);
            $miniaturas = '';
        }
        // mostrar imagenes
        foreach($imagenes as &$imagen) {
            if (!is_dir(DIR_WEBSITE.'/webroot'.$dir.$miniaturas.'/'.$imagen)) {
                $buffer .= '<a href="'.$this->_base.$dir.'/'.$imagen.'" rel="prettyPhoto[gallery2]"><img src="'.$this->_base.$dir.$miniaturas.'/'.$imagen.'" alt="'.$imagen.'" /></a>';
            }
        }
        // fin de la galería
        $buffer .= '</div>';
        // retornar bufer
        return $buffer;
    }

    private function header ()
    {
        return '
            <link rel="stylesheet" href="'.$this->_base.'/multimedia/css/prettyPhoto.css" type="text/css" media="screen" charset="utf-8" />
            <script src="'.$this->_base.'/multimedia/js/jquery.prettyPhoto.js" type="text/javascript" charset="utf-8"></script>
            <style type="text/css">
            #ImagenesPlugin img {
                margin: 5px;
                padding: 3px;
                border: solid 1px #CCC;
                -moz-box-shadow: 1px 1px 5px #999;
                -webkit-box-shadow: 1px 1px 5px #999;
                box-shadow: 1px 1px 5px #999;
                max-width: 160px;
                max-height: 120px;
            }
            </style>
            <script type="text/javascript" charset="utf-8">
                $(document).ready(function(){
                    $("#ImagenesPlugin a[rel^=\'prettyPhoto\']").prettyPhoto();<commit_msg>Se agregan saltos de línea<commit_after><?php

/**
 * SowerPHP: Minimalist Framework for PHP
 * Copyright (C) SowerPHP (http://sowerphp.org)
 *
 * Este programa es software libre: usted puede redistribuirlo y/o
 * modificarlo bajo los términos de la Licencia Pública General GNU
 * publicada por la Fundación para el Software Libre, ya sea la versión
 * 3 de la Licencia, o (a su elección) cualquier versión posterior de la
 * misma.
 *
 * Este programa se distribuye con la esperanza de que sea útil, pero
 * SIN GARANTÍA ALGUNA; ni siquiera la garantía implícita
 * MERCANTIL o de APTITUD PARA UN PROPÓSITO DETERMINADO.
 * Consulte los detalles de la Licencia Pública General GNU para obtener
 * una información más detallada.
 *
 * Debería haber recibido una copia de la Licencia Pública General GNU
 * junto a este programa.
 * En caso contrario, consulte <http://www.gnu.org/licenses/gpl.html>.
 */

namespace sowerphp\general\Multimedia;

/**
 * Clase para crear una galería de imágenes
 * @author <NAME>, DeLaF (esteban[at]delaf.cl)
 * @version 2014-11-23
 */
class View_Helper_Imagenes
{

    private $_base;

    public function __construct ($dir = null)
    {
        // obtener base
        $this->_base = _BASE;
        // si se indico un directorio se genera e imprime (like TableHelper)
        if ($dir) {
            echo $this->generate($dir);
        }
    }

    public function generate ($dir)
    {
        // buffer para ir dibujando la galería
        $buffer = '';
        // obtener cabecera
        $buffer .= $this->header();
        // inicio de la galería
        $buffer .= '<div id="ImagenesPlugin">'."\n";
        // obtener imagenes (si existen miniaturas se usan)
        if(file_exists(DIR_WEBSITE.'/webroot'.$dir.'/miniaturas')) {
            $imagenes = scandir(DIR_WEBSITE.'/webroot'.$dir.'/miniaturas');
            $miniaturas = '/miniaturas';
        } else {
            $imagenes = scandir(DIR_WEBSITE.'/webroot'.$dir);
            $miniaturas = '';
        }
        // mostrar imagenes
        foreach($imagenes as &$imagen) {
            if (!is_dir(DIR_WEBSITE.'/webroot'.$dir.$miniaturas.'/'.$imagen)) {
                $buffer .= '<a href="'.$this->_base.$dir.'/'.$imagen.'" rel="prettyPhoto[gallery2]"><img src="'.$this->_base.$dir.$miniaturas.'/'.$imagen.'" alt="'.$imagen.'" /></a>'."\n";
            }
        }
        // fin de la galería
        $buffer .= '</div>'."\n";
        // retornar bufer
        return $buffer;
    }

    private function header ()
    {
        return '
            <link rel="stylesheet" href="'.$this->_base.'/multimedia/css/prettyPhoto.css" type="text/css" media="screen" charset="utf-8" />
            <script src="'.$this->_base.'/multimedia/js/jquery.prettyPhoto.js" type="text/javascript" charset="utf-8"></script>
            <style type="text/css">
            #ImagenesPlugin img {
                margin: 5px;
                padding: 3px;
                border: solid 1px #CCC;
                -moz-box-shadow: 1px 1px 5px #999;
                -webkit-box-shadow: 1px 1px 5px #999;
                box-shadow: 1px 1px 5px #999;
                max-width: 160px;
                max-height: 120px;
            }
            </style>
            <script type="text/javascript" charset="utf-8">
                $(document).ready(function(){
                    $("#ImagenesPlugin a[rel^=\'prettyPhoto\']").prettyPhoto();
{'fraction_non_alphanumeric': 0.13727219282774838, 'fraction_numerical': 0.011757789535567314, 'mean_word_length': 2.1665891112145186, 'pattern_counts': {'":': 0, '<': 31, '<?xml version=': 0, '>': 43, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '661890', 'n_tokens_mistral': 2258, 'n_tokens_neox': 2160, 'n_words': 553}