<?php function authLDAP($username, $password){ $ldap_domain = 'midominio'; $adServer = "miservidor"; $ldapconn = ldap_connect($adServer) or die("Could not connect to LDAP server."); $ldaprdn = $username; # Descomentar si la App corre bajo Apache2 sobre Windows Server #ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3) $ldapbind = ldap_bind($ldapconn, "$ldaprdn@$ldap_domain", $password); if($ldapbind) return true; else return false; } authLDAP("sad", "asd"); ?>
jueves, 28 de junio de 2012
PHP: logueo con LDAP
jueves, 7 de junio de 2012
javascript: Simple Libreria js
(function(){ var Iniciador =function(){ this.nombre = ''; this.saludar = function(){ console.log('hola'); return this; } this.despedir= function(){ console.log('adios!'); return this; } } this.C = new Iniciador(); }).call(this); C.saludar() console.log("saludar y despedir....") C.saludar().despedir();
Test rck:
http://jsfiddle.net/ric47121/AAn6e/
javascript: agregar metodos a una clase de forma dinamica (prototype)
var Persona =function(){ this.nombre = ''; this.saludar = function(){ console.log('hola'); } } Persona.prototype.despedir = function(){ //agrego metodo de forma dinamica console.log('adios'); } var pepe = new Persona(); pepe.saludar(); pepe.despedir();
Test rck:
http://jsfiddle.net/ric47121/ayQwa/
jQuery: textbox disabled y enviado por POST
HTML
<select name="docTipo" id="solapaDatosPersonales_docTipo" class="columna2" onchange="cambioTipoDoc(this)"> <option value="1">DNI</option> <option value="2">NO INFORMADO</option> </select> <br/> <input type="text" name="docNro" id="solapaDatosPersonales_docNro" class="columna4" value="asd"/>JS
function cambioTipoDoc(control){ console.log(control.value) if(control.value == 2){ //no informado //$("#solapaDatosPersonales_docNro").attr("disabled", "disabled"); $("#solapaDatosPersonales_docNro").attr("readonly", "readonly"); $("#solapaDatosPersonales_docNro").css("background", "#f0f0f0"); } else{ $("#solapaDatosPersonales_docNro").removeAttr("readonly"); $("#solapaDatosPersonales_docNro").css("background", "#fff"); } }
Test rck:
http://jsfiddle.net/ric47121/nDhLe/
miércoles, 6 de junio de 2012
JavaScript: Colecciones findBy
function getprop(x) { return function(o) { return o[x]; } } var pablo = {name: 'pablo',edad: 15}; //var p ='name' //console.log(pablo['name'])//pablo //console.log(pablo[p])//pablo var amigos = { arr_amigos : [{name: 'pepe',edad: 52},{name: 'ruben',edad: 12},{name: 'oscar',edad: 32}], findBy : function (prop, value){ return _.find(this.arr_amigos, function(p){ return p[prop] == value; }); } } //console.log(amigos) //console.log(_.find(amigos.arr_amigos, function(p){ return p.name == 'pepe'; })) //ok console.log(amigos.findBy("name","pepe")) //ok
Test rck:
http://jsfiddle.net/ric47121/wnCKk/
UndersCore.js: map, filter, find (javascript como funcional)
/* var res; res = _.map([1, 2, 3], function(num){ return num * 3; }); console.log(res); //3,6,9 res = _.map({one : 1, two : 2, three : 3}, function(num, key){ return num * 3; }); console.log(res); //3,6,9 */ /*------*/ var amigos = [{name: 'pepe',edad: 52},{name: 'ruben',edad: 12},{name: 'oscar',edad: 32}]; var amigosMayores = _.filter(amigos, function(p){ return p.edad > 18 }) console.log(amigosMayores); //pepe y oscar var nombres = _.map(amigos, function(p){ return p.name }) console.log(nombres); //["pepe", "ruben", "oscar"] var pe = _.find(amigos, function(p){ return p.name == 'pepe'; }); console.log(pe);
Test rck:
http://jsfiddle.net/ric47121/NPfQX/1/
Pagina Oficial:
http://documentcloud.github.com/underscore/
JavaScript: Programación Funcional - Filter
function filter(array, f) { var r = []; for (var i in array) { if (f(array[i])) { r.push(array[i]); } } return r; }/*ejemplo 1*/
function par(x) {return x % 2 == 0} var res = filter([1,2,3,4,5], par); console.log(res) //[2,4] /*ejemplo 2*/ var amigos = [{name: 'pepe',edad: 52},{name: 'ruben',edad: 12},{name: 'oscar',edad: 32}]; var amigosMayores = filter(amigos, function(p){ return p.edad > 18 }) console.log(amigosMayores) //pepe y oscar
Test rck:
http://jsfiddle.net/j3x5K/1/
Fuente:
http://www.slideshare.net/leo.soto/javascript-funcional
YUI 2: Test Panel con Eventos
var panel; function init() { // Instantiate a Panel from markup panel = new YAHOO.widget.Panel("panel1", { width:"320px", visible:false, constraintoviewport:true }); panel.render(); YAHOO.util.Event.addListener("show1", "click", panel.show, panel, true); YAHOO.util.Event.addListener("hide1", "click", panel.hide, panel, true); panel.subscribe("beforeShow", function(){ console.log("antes de renderizar panel"); }); } YAHOO.util.Event.addListener(window, "load", init);
http://jsfiddle.net/zNF4B/
cheatsheet
viernes, 1 de junio de 2012
HTML 5: Test sessionStorage
var amigos = [{name: 'pepe',edad: 52},{name: 'ruben',edad: 22}]; try { if (!sessionStorage.amigos) { sessionStorage.amigos = JSON.stringify(amigos); console.log("cargado desde DB"); } else { console.log("cargado desde el storage"); } } catch(e) { alert("navegador no soporta HTML 5 Storage") } var friends = JSON.parse(sessionStorage.amigos); console.log(friends)
http://jsfiddle.net/8DL5f/3/
Suscribirse a:
Entradas (Atom)