Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/12/2011, 21:11
serggio_dominguez
 
Fecha de Ingreso: enero-2008
Mensajes: 3
Antigüedad: 16 años, 3 meses
Puntos: 0
Desafio: vcl4php sin delphi4php (¿Podrá ser NetBeans?)

Hola gente del foro me llamo Sergio y quiero compartir el siguiente desafio:
Por razones de fuerza mayor ($) no puedo utilizar el IDE DELPHI4PHP para programar una página web.
Sin embargo la característica del "código abierto " del Frameworks VCL4PHP me perite poder trabajar con
las vcl utilizando otro IDE por ejemplo NetBeans que también es de código abierto y me reconece
las clases además de ayudar con el completado del código.
Desafío 1: ¿Se puede programar con vcl4php si utilizar archivos de recursos ...xml.php?.
Desafio 2: ¿Cómo puedo pasar los parámetros ($sender,$params) a un método definido en una clase particular?.
Desafio 3: ¿Como se pueden definir los componentes que se van a utilizar dentro de una clase particular?.
El siguiente ejemplo me muestra un formulario con template pero no supera los desafiíos anteriores.
¿Quien se anima a contribuir?. desde ya muchas gracias a los que participan.
Código PHP:
<?php 
// Requerir la clase principal. 
require_once("vcl/vcl.inc.php"); 

//Especificar las unidades que se van a utilizar. 
use_unit("google/maps/gmaps.inc.php"); 
//use_unit("Zend/zmail.inc.php"); 
//use_unit("Zend/zcache.inc.php"); 
//use_unit("Zend/zauthdigest.inc.php"); 
//use_unit("Zend/zauthdb.inc.php"); 
//use_unit("Zend/zauth.inc.php"); 
//use_unit("Zend/zacl.inc.php"); 
//use_unit("PEAR/peardatagrid.inc.php"); 
use_unit("jquery/jquery.inc.php"); 
use_unit("oracle.inc.php"); 
use_unit("mysql.inc.php"); 
use_unit("clock.inc.php"); 
use_unit("webservices.inc.php"); 
use_unit("interbase.inc.php"); 
use_unit("dbctrls.inc.php"); 
use_unit("dbgrids.inc.php"); 
use_unit("db.inc.php"); 
use_unit("dbtables.inc.php"); 
use_unit("styles.inc.php"); 
use_unit("auth.inc.php"); 
use_unit("imglist.inc.php"); 
use_unit("pager.inc.php"); 
use_unit("comctrls.inc.php"); 
use_unit("chart.inc.php"); 
use_unit("checklst.inc.php"); 
use_unit("buttons.inc.php"); 
use_unit("jsval/formvalidator.inc.php"); 
use_unit("actnlist.inc.php"); 
use_unit("menus.inc.php"); 
use_unit("forms.inc.php"); 
use_unit("extctrls.inc.php"); 
use_unit("stdctrls.inc.php"); 


// Crear la clase de la página web. 
class pagina_web extends Page 

     
    public 
$columna_izquierda
    
//public $columna_derecha; 
    //public $contenido_central; 
     
    
function create($sender$params
    { 
        
$this->columna_izquierda = new Panel(); 
        
$this->columna_izquierda->setCaption('Hola mundo.'); 
    } 
     
    function 
template($sender$params
    { 
        
//$template = $params['template']; 
        
$meta_title        'Hola mundo'
        
$meta_keyword      file_get_contents('meta/keyword.txt'); 
        
$meta_description  file_get_contents('meta/description.txt'); 

        
//$template->_smarty->assign('meta_title',$meta_title); 
        //$template->_smarty->assign('meta_keyword',$meta_keyword); 
        //$template->_smarty->assign('meta_description',$meta_description); 
    

     


// Especificar variables globales. 
global $application
global 
$pagina_web

// Instaciar la página web. 
$pagina_web = new pagina_web($application); 

// Especiaficar las propiedades de la página web. 
$pagina_web->setAction('index.php');         // string 
$pagina_web->setAlignment('center');         // agLeft - agCenter - agRight  
$pagina_web->setBackground('');             // Img file name 
$pagina_web->setBorderWidth('0');                // Int witdh boirder 
$pagina_web->setBottomMargin('0');            // Int witdh bottom margin 
$pagina_web->setCache('');                    // Path to cache 
$pagina_web->setCached(false);                // true - false 
$pagina_web->setCaption('HEXAST');          // String page title. 
$pagina_web->setColor('');                    // String color #FFFFFF 
$pagina_web->setCursor('crDefault');        // crPointer - CrossHair - crText - crWait - crDefault - crHelp - crE-Resize - crNE-Resize - crN-Resize - crNW-Resize - crW-Resize - crSW-Resize - crS-Resize - crSE-Resize - crAuto  
$pagina_web->setDirectionality('ddLeftToRight'); // ddLeftToRight - ddRightToLeft 
//$pagina_web->setDocType('iso-8859-1');        //Espcifica el tipo de documento según la W3C:  Unicode (UTF-8)            |utf-8 - Western European (ISO)     |iso-8859-1  
$pagina_web->setFont(array( 
                            
'taNone',        //Align: taNone - taLeft - taRight - taCenter - taJustify 
                            
'caNone',        //Case:  caCapitalize - caUpperCase - caLowerCase - caNone 
                            
'#000000',        //Color: String color - example: #000000 
                            
'Tahoma',        //Family: String font name  - example: Tahoma 
                            
'',                //LineHeigth: 
                            
'11px',            //Font size in pixel 
                            
'fsNormal',        //Text style: fsNormal - fsItalic - fsOblique 
                            
'vaNormal',        //Font variant: vaNormal - vaSmallCaps 
                            
'normal'        //Font weight: normal - bold - bolder - lighter - 100 - 200 - 300 - 400 - 500 - 600 - 700 - 800 - 900  
                            
)); 
                             
$pagina_web->setFrameBorder('fbNo');        //Frame border: fbDefault - fbNo - fbYes 
$pagina_web->setFrameSpacing('0');            //Frame spacing in pixel 
$pagina_web->setHeight('3000');                 //Especifica el alto de la página en pixeles. 
$pagina_web->setHint('');                     //Set Hint 
$pagina_web->setIcon('');                    //Path to icon file 
$pagina_web->setIsForm(false);                //Espcifica si la pagina es un formulario: true - false 
$pagina_web->setIsMaster(false);             //Especifica si la página es maestra: true - false 
$pagina_web->setLanguage('(default)');        //Especifica el lenguaje de la página: (default) - Spanish (Argentina) -  
$pagina_web->setLayer('0');                    //Especifica el nivel de la capa. 
$pagina_web->setLayout(array( 
                            
'5',            //Numero de columnas. 
                            
'5',            //Número de filas. 
                            
'ABS_XY_LAYOUT',//Tipo de Layout: ABS_XY_LAYOUT - REL_XY_LAYOUT - XY_LAYOUT - FLOW_LAYOUT - GRIDBAG_LAYOUT - ROW_LAYOUT - COL_LAYOUT 
                            
true            // Usar íxel transparente: true - false 
                            
)); 
$pagina_web->setLeft('0');                    //Distancia desde la izquierda en pixeles. 
$pagina_web->setLeftMargin('0');                //Ancho del margen izquierdo en pixeles. 
$pagina_web->setName('pagina_web');            //Nombnre del objeto. 
$pagina_web->setRightMargin('0');                //Ancho del margen derecho en pixeles. 
$pagina_web->setShowFooter(true);            //Viusarlizar el footer: true - false 
$pagina_web->setShowHeader(true);            //Visualizar el header: true - false 
$pagina_web->setShowHint('');                //Visualiza el Hint. 
$pagina_web->setTag('0');                        //Especificar el tag. 
$pagina_web->setTarget('');                    //Especificar el marco donde hará blanco la acción de la página.                             
$pagina_web->setTemplateEngine('SmartyTemplate'); //Especifica el motor de administrara el template de la página: '' - SmartyTemplate - VCLTemplate 
$pagina_web->setTemplateFilename('template.tpl'); //Especifica el nombre del archivo que se utilizara como template. 
$pagina_web->setTop('0');                        //Especifica la posición supewrior en pixeles. 
$pagina_web->setTopMargin('0');                //Especifica el ancho en pixeles del margen superior. 
$pagina_web->setUseAjax(true);                //Especifica si página va a usar AJAX: true - false 
$pagina_web->setUseAjaxDebug(false);         //Especifica si se va a hacer debug con los query AJAX 
$pagina_web->setUseAjaxUri('');                //Especifica la URL donde se enviaran los query AJAX. 
$pagina_web->setVisible(true);                //Especifica si la página web será visible. 
$pagina_web->setWidth('1300');                //Especifica el ancho de la página. 

// Especificamos los métodos de la página web. 
// PHP Event 
$pagina_web->setOnAfterAjaxProcess('');        //Object: Especificar el metodo. 
$pagina_web->setOnAfterShow('');            //Object: Especificar el metodo. 
$pagina_web->setOnAfterShowFooter('');        //Object: Especificar el metodo. 
$pagina_web->setOnBeforeAjaxProcess('');    //Object: Especificar el metodo. 
$pagina_web->setOnBeforeShow('');            //Object: Especificar el metodo. 
$pagina_web->setOnBeforeShowHeader('');        //Object: Especificar el metodo. 
//$pagina_web->setOnCreate($sender, $params);                //Object: Especificar el metodo. 
$pagina_web->setOnShow('');                    //Object: Especificar el metodo. 
$pagina_web->setOnShowHeader('');            //Object: Especificar el metodo. 
$pagina_web->setOnStartBody('');            //Object: Especificar el metodo. 
//$pagina_web->setOnTemplate($sender, $params);                //Object: Especificar el metodo. 
// JS Event 
$pagina_web->setjsOnLoad('');                //Object: Especificar el metodo. 
$pagina_web->setjsOnReset('');                //Object: Especificar el metodo. 
$pagina_web->setjsOnSubmit('');                //Object: Especificar el metodo. 
$pagina_web->setjsOnUnload('');                //Object: Especificar el metodo. 

// Mostrar la página web. 
$pagina_web->show(); 
?>