viernes, 25 de abril de 2014

Yii CJuiDatePicker rango de fechas en datepicker de jQuery UI

Rango de fechas en el Framework Yii (CJuiDatePicker) usando la librería jQuery UI que trae por defecto este framework PHP, la codificación es similar, en este caso habria que ponerle "js" antes de la palabra function, como se muestra en el ejemplo.

From: <input type="text" name="date_from" id="date_from" />
To: <input type="text" name="date_to" id="date_to" />



<?php
$this->widget('zii.widgets.jui.CJuiDatePicker', array(
    'name' => 'date_from',
    // additional javascript options for the date picker plugin
    'options' => array(
        'showAnim' => "slideDown",
        'changeMonth' => true,
        'numberOfMonths' => 1,
        'showOn' => "button",
        'buttonImageOnly' => false,
        'dateFormat' => "yy-mm-dd",
        'showButtonPanel' => true,
        'onClose' => 'js:function(selectedDate) { $("#date_to").datepicker("option", "minDate", selectedDate); }',            
    )
));
$this->widget('zii.widgets.jui.CJuiDatePicker', array(
    'name' => 'date_to',
    // additional javascript options for the date picker plugin
    'options' => array(
        'showAnim' => "slideDown",
        'changeMonth' => true,
        'numberOfMonths' => 1,
        'showOn' => "button",
        'buttonImageOnly' => false,
        'dateFormat' => "yy-mm-dd",
        'showButtonPanel' => true,
        'onClose' => 'js:function(selectedDate) { $("#date_from").datepicker("option", "maxDate", selectedDate); }',
    )
));
?>

Los parámetros son similares que el de JavaScript, como el siguiente código:

<script type="text/javascript">
    $(function() {
        $("#date_from").attr('value', getTodayDate);
        $("#date_from").datepicker({
            changeMonth: true,
            changeYear: true,
            numberOfMonths: 1,
            showOn: "button",
            buttonImageOnly: false,
            showAnim: "slideDown",
            dateFormat: "yy-mm-dd",
            onClose: function(selectedDate) {
                $("#date_to").datepicker("option", "minDate", selectedDate);
            }
        });
        $("#date_to").datepicker({
            changeMonth: true,
            changeYear: true,
            numberOfMonths: 1,
            showOn: "button",
            buttonImageOnly: false,
            showAnim: "slideDown",
            dateFormat: "yy-mm-dd",
            onClose: function(selectedDate) {
                $("#date_from").datepicker("option", "maxDate", selectedDate);
            }
        });
    });
</script>

Ejemplo en JavaScript pueden verlo aquí: http://jsfiddle.net/wimarbueno/fpT6q/
Documentación: http://www.yiiframework.com/doc/api/1.1/CJuiDatePicker

lunes, 21 de abril de 2014

getAttribute y setAttribute en JavaScript

TExtos de prueba:


<div id="ejemploid">Este es conenido del DIV con ID: "ejemploid"</div>                        
<div id="ejemplo" data-atributo-sin-valor class="miejemplo" style="background: white;color: gold;font-size: 18px;border: 1px dashed red;padding: 10px;">
    Este es conenido del DIV con ID: "ejemplo", Clase: "miejemplo"
</div>




<script type="text/javascript">

    //getAttribute y setAttribute en Javascript 
    /**
     * Test01:
     */
    //Prueba con la tipica getElementById()
    var testid = document.getElementById('ejemploid');//Poniendo en variable para escribir menos codigo
    var testid1 = testid.innerHTML;//Obteniendo el valor es como escribir: document.getElementById('ejemploid').innerHTML;
    alert('Resultado 01 del DIV con ID "ejemploid": ' + testid1);
    var testid2 = testid.innerHTML = 'Agregra este texto en el ID ejemploid';//Asignando valor
    alert('Resultado 02 del DIV con ID "ejemploid":  ' + testid2);



    /**
     * Test02:
     */
    //Obtener valor con la funcion nativa de JS: getAttribute
    var elemento = document.querySelector('#ejemplo');
    var test01 = elemento.getAttribute('id'); //muestra: "ejemplo"
    var test02 = elemento.getAttribute('data-atributo-que-no-existe'); //muestra: null
    var test03 = elemento.getAttribute('data-atributo-sin-valor'); //muestra: ""
    alert('Resultado del DIV con ID "ejemplo": ' + 
elemento.innerHTML);
    alert('Resultado 01 del DIV con ID "ejemplo": ' + test01);
    alert('Resultado 02 del DIV con ID "ejemplo": ' + test02);
    alert('Resultado 03 del DIV con ID "ejemplo": ' + test03);


    /**
     * Test03:
     */
    //Asignar valor con la funcion nativa de JS: setAttribute
    var elemento = document.querySelector('#ejemplo');
    elemento.setAttribute("data-atributo-que-no-existe", "Valor para ese atributo");
    // Comprobación
    alert('Comprobación: ' + elemento.getAttribute("data-atributo-que-no-existe")); // "Valor para ese atributo"


    /**
     * Test04:
     */
    //Atributos con una propiedad para sí mismo
    //Ojo, aunque getAttribute y setAttribute funcionarán, los elementos tienen ciertas propiedades específicas para acceder a algunos atributos. Aparte de style (ver abajo), aquí tenéis algunos de las propiedades más frecuentes:
    var elemento = document.querySelector('#ejemplo');
    // class
    elemento.className // "miejemplo"
    alert('elemento className, comprobacion 01: ' + elemento.className)//comprobación
    elemento.className = "miejemplo ejemplo-especial"; // Ahora el elemento tendrá las clases "miejemplo" y "ejemplo-especial"
    alert('elemento className, comprobacion 02: ' + elemento.className)//comprobación

    // id
    elemento.id // "ejemplo"
    alert('elemento id, comprobación: ' + elemento.id)//comprobación


    //Esas son globales, y son siempre strings, aunque no estén definidos. Pero en elementos más específicos se pueden encontrar otros.
    //En elementos más específicos (como <a>, <img> e <input>) tenemos propiedades adicionales (no están todas pero sí las más importantes):
    //- En <a> tenemos href, target y title
    //- En <img> tenemos src y alt
    //- En <input> están value y type…



    /**
     * Test05:
     */
    //El atributo style
    //- Se accede a él de forma específica (elemento.style), pero no devuelve una string, sino un ElementCSSInlineStyle (para el caso, un objeto).
    //- Ese objeto tiene tantas propiedades como propiedades css acepta el navegador
    //- Los nombres de esas propiedades son el de la propiedad (excepto float que es una palabra reservada), o están en camelCase si tienen guiones elemento.style.borderRadius. Para hacer la conversión CSS/Javascript reemplazad todos los guiones y la letra siguiente por sólo la letra en mayúscula (ej: -moz-border-radius › MozBorderRadius)
    var elemento = document.querySelector('#ejemplo');
    alert('Comprobacion de style color: '+elemento.style.color);
    alert('Comprobacion de style font-size: '+elemento.style.fontSize);                         
</script>

viernes, 11 de abril de 2014

Certificados de seguridad SSL

¿Qué es un certificado SSL?

El certificado SSL (Secure Socket Layer), es un protocolo de seguridad cuyo objetivo es garantizar la transacción de datos de forma segura entre visitante y Web, o viceversa, mediante la encriptación de la información.

¿En que se basa un certificado SSL?

El certificado SSL, se basa en la encriptación de los datos enviados entre el servidor donde se encuentre alojada la Web y el programa para navegar que utilice el visitante, o viceversa, utilizando para ello algoritmos matemáticos. Mediante esta encriptación, se impide que dicha información pueda ser interceptada, haciendo que la transacción de datos se realice de forma segura.

Certificados de seguridad SSL

  ¿Qué ventajas me puede dar un certificado SSL?

La ventaja principal del certificado de seguridad SSL, es la de garantizar que la transacción de datos se realiza de forma segura, facilitando así poder ganar la confianza de los visitantes que acceden a su página Web.

¿Qué páginas Web pueden necesitar un certificado SSL?

Páginas que tengan un servicio de tienda virtual o algún tipo de comercio electrónico, que puedan aceptar pagos mediante tarjetas. O Webs que simplemente puedan almacenar datos confidenciales como contraseñas, datos bancarios, tarjetas de crédito..

¿Qué tipos de cifrado existen?

Los cifrados de los actuales certificados de seguridad SSL aceptan una encriptación de datos de entre 40 a 256 bits.

¿Qué tipos de certificados puedo contratar?

  • Rapid SSL: El certificado Rapid SSL, es valido para un único dominio o subdominio y permite una encriptación de datos de hasta 128/256 bits. Es compatible con los navegadores; IE 5.01+, AOL 5+, Netscape 4.7+, Ópera 7+, Safari, Mozilla 1+ y Firefox 1+.
  • RapidSSL Wildcard: El certificado RapidSSL Wildcard, es valido para todos los subdominios de un dominio y permite una encriptación de datos de hasta 128/256 bits. Es compatible con los navegadores; IE 5.01+, AOL 5+, Netscape 4.7+, Ópera 7+, Safari, Mozilla 1+ y Firefox 1+.
  • True BusinessID: El certificado True BusinessID, es valido para un único dominio o subdominio y permite una encriptación de datos de hasta 128/256 bits e introducir los datos de su empresa o entidad como datos identificativos de su certificado SSL. Es compatible con los navegadores; IE 5.01+, AOL 5+, Netscape 4.7+, Ópera 7+, Safari, Mozilla 1+ y Firefox 1+.
  • True BusinessID Wildcard: El certificado True BusinessID, es valido para todos los subdominios de un dominio y permite una encriptación de datos de hasta 128/256 bits e introducir los datos de su empresa o entidad como datos identificativos de su certificado SSL. Es compatible con los navegadores; IE 5.01+, AOL 5+, Netscape 4.7+, Ópera 7+, Safari, Mozilla 1+ y Firefox 1+.
  • True BusinessID with EV: El certificado True BusinessID with EV, es valido para un único dominio o subdominio y permite una encriptación de datos de hasta 128/256 bits e introducir los datos de su empresa o entidad como datos identificativos de su certificado SSL. Además la tecnología EV, le permitirá ver en la barra de direcciones de su navegador, una pequeña barra verde notificando la autenticidad del certificado de seguridad SSL. Es compatible con los navegadores; IE 5.01+, AOL 5+, Netscape 4.7+, Ópera 7+, Safari, Mozilla 1+ y Firefox 1+.


Fuente:certificados.es