rapc-commit Mailing List for Road Advertisement Panel Control (Page 5)
Brought to you by:
maher_karim,
sdteffen
You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(8) |
Nov
(23) |
Dec
(28) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
(14) |
Feb
(38) |
Mar
(6) |
Apr
|
May
(2) |
Jun
(2) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <sdt...@us...> - 2006-11-25 07:04:16
|
Revision: 13 http://svn.sourceforge.net/rapc/?rev=13&view=rev Author: sdteffen Date: 2006-11-24 23:04:04 -0800 (Fri, 24 Nov 2006) Log Message: ----------- I guess these files were added here by mistake. Removed Paths: ------------- trunk/admin/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sdt...@us...> - 2006-11-25 07:04:16
|
Revision: 13 http://svn.sourceforge.net/rapc/?rev=13&view=rev Author: sdteffen Date: 2006-11-24 23:04:04 -0800 (Fri, 24 Nov 2006) Log Message: ----------- I guess these files were added here by mistake. Removed Paths: ------------- trunk/admin/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Ste...@do...> - 2006-11-25 06:58:08
|
Looks like the commit message was deleted by mistake... * doc/build.xml: Removed code that was commented out; use lowercase file names * doc/user/en/rapc_user_guide.xml: * doc/administration/rapc_administration_guide.xml: Use rapc-info mailing list * locale/en/LC_MESSAGES/rapc.po: Updated English translations; use relative path to sources * doc/administration/figure/rapc_license.png: Added missing file * doc/administration/images/warning.png: Added missing file * panelpage.php: Improved copyright comment Ignoring files. |
From: <mah...@us...> - 2006-11-14 07:29:55
|
Revision: 11 http://svn.sourceforge.net/rapc/?rev=11&view=rev Author: maher_karim Date: 2006-11-13 23:29:50 -0800 (Mon, 13 Nov 2006) Log Message: ----------- 2006-11-14 Maher Abdel karim <mah...@do...> * script/create_rapc_ddl.sql: add boolrow to panel table.remove permitdate * include/dataobject/rapc.ini: * include/dataobject/rapc.links.ini:added boolrow to panel table. * include/dataobject/public_panel.php:add boolrow, and related functions Modified Paths: -------------- trunk/rapc/include/dataobject/Public_panel.php trunk/rapc/include/dataobject/rapc.ini trunk/rapc/include/dataobject/rapc.links.ini trunk/rapc/script/create_rapc_ddl.sql This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-11-14 07:29:55
|
Revision: 11 http://svn.sourceforge.net/rapc/?rev=11&view=rev Author: maher_karim Date: 2006-11-13 23:29:50 -0800 (Mon, 13 Nov 2006) Log Message: ----------- 2006-11-14 Maher Abdel karim <mah...@do...> * script/create_rapc_ddl.sql: add boolrow to panel table.remove permitdate * include/dataobject/rapc.ini: * include/dataobject/rapc.links.ini:added boolrow to panel table. * include/dataobject/public_panel.php:add boolrow, and related functions Modified Paths: -------------- trunk/rapc/include/dataobject/Public_panel.php trunk/rapc/include/dataobject/rapc.ini trunk/rapc/include/dataobject/rapc.links.ini trunk/rapc/script/create_rapc_ddl.sql Modified: trunk/rapc/include/dataobject/Public_panel.php =================================================================== --- trunk/rapc/include/dataobject/Public_panel.php 2006-11-14 06:04:01 UTC (rev 10) +++ trunk/rapc/include/dataobject/Public_panel.php 2006-11-14 07:29:50 UTC (rev 11) @@ -58,7 +58,9 @@ var $username; var $insertdate; var $permitno; - var $permitdate; + var $image; + var $regiterno; + var $boolrow; /* ZE2 compatibility trick*/ function __clone() { return $this;} @@ -80,7 +82,7 @@ return array_merge(parent::table(), $hierselects); } var $fb_textFields = array('notes','address','notesonlocation','panelsubject'); - var $fb_fieldsToRender = array( 'panelcatagory','companyname','ownership', + var $fb_fieldsToRender = array( 'registerno','panelcatagory','companyname','ownership', 'nationalno', 'mothername', 'address', 'teleno', 'faxno', 'mobileno', 'pobox', 'panelsubject','road_route_district', @@ -90,19 +92,20 @@ 'lightavailable','facecount','paneltypedimension', 'panelarea','annualfees','usefees','totalfees','agreedby','receiptno', 'receiptdate','insurancereceiptno','insurancereceiptdate', - 'contractno','notes','idroadiddistrict','permitno','permitdate'); + 'contractno','notes','idroadiddistrict','permitno','image','boolrow'); var $fb_preDefOrder = array( 'companyname','panelcatagory', 'ownership', + 'registerno', 'nationalno', 'mothername', 'address', 'teleno', 'faxno', 'mobileno', 'pobox', 'panelsubject','road_route_district', 'carrigewaywidth', 'shoulderwidth', 'numberoflanes', 'medianwidth','date','routetodistance','x','y', 'routedirection','notesonlocation','paneltodistance','nearstpanelx','nearstpanely', - 'lightavailable','facecount','paneltypedimension', - 'panelarea','annualfees','usefees','totalfees','agreedby','permitno','permitdate','receiptno', + 'lightavailable','facecount','boolrow','paneltypedimension', + 'panelarea','annualfees','usefees','totalfees','agreedby','permitno','receiptno', 'receiptdate','insurancereceiptno','insurancereceiptdate', - 'contractno','notes','idroadiddistrict'); + 'contractno','notes','image','idroadiddistrict'); var $fb_linkElementTypes = array('facecount' => 'radio'); var $fb_enumFields = array('facecount'); @@ -169,11 +172,11 @@ 'numeric', null, $_SESSION["strHtmlQuickFormValidation"]); $form->addRule('paneltypedimension', _('Please select the panel type and dimension.'), 'required', null, $_SESSION["strHtmlQuickFormValidation"]); - $form->addRule('permitdate', _('Please select the permission date.'), - 'required', null, $_SESSION["strHtmlQuickFormValidation"]); + $form->addRule('permitno', _('Please select the permission no.'), 'required', null, $_SESSION["strHtmlQuickFormValidation"]); - $form->addRule('annualfees', _('Please enter the annual fees.'), + + /*$form->addRule('annualfees', _('Please enter the annual fees.'), 'required', null, $_SESSION["strHtmlQuickFormValidation"]); $form->addRule('usefees', _('Please enter the use fees.'), 'required', null, $_SESSION["strHtmlQuickFormValidation"]); @@ -181,17 +184,14 @@ 'required', null, $_SESSION["strHtmlQuickFormValidation"]); $form->addRule('panelarea', _('Please enter panel area.'), 'required', null, $_SESSION["strHtmlQuickFormValidation"]); + */ + + //from Areejs comments - $form->addRule('annualfees', _('Please enter the annual fees.'), - 'nonzero', null, $_SESSION["strHtmlQuickFormValidation"]); - $form->addRule('usefees', _('Please enter the use fees.'), - 'nonzero', null, $_SESSION["strHtmlQuickFormValidation"]); - $form->addRule('totalfees', _('Please enter the total fees.'), - 'nonzero', null, $_SESSION["strHtmlQuickFormValidation"]); - $form->addRule('panelarea', _('Please enter panel area.'), - 'nonzero', null, $_SESSION["strHtmlQuickFormValidation"]); - //from Areejs comments + $form->addRule('image', _('The image type should be JPG.'), + 'filename', '/.*\.[jJ][pP][gG]$/','client'); //Letters only + $form->addRule('companyname', _('The Company name should be only letters.'), 'regex','/^[^1234567890]*$/','client'); $form->addRule('mothername', _('The Mother name should be only letters.'), @@ -218,9 +218,23 @@ $form->addRule('insurancereceiptno', _('The entered value should be only numeric.'), 'numeric',null,'client'); + $form->addRule('annualfees', _('Please select the panel dimension, the value should not be zero'), + 'numeric',null,'client'); + $form->addRule('panelarea', _('Please select the panel dimension, the value should not be zero'), + 'numeric',null,'client'); + $form->addRule('usefees', _('Please select the panel dimension, the value should not be zero'), + 'numeric',null,'client'); + + $form->addRule('annualfees', _('Please select the panel dimension, the value should not be zero'), + 'nonzero',null,'client'); + $form->addRule('panelarea', _('Please select the panel dimension, the value should not be zero'), + 'nonzero',null,'client'); + $form->addRule('usefees', _('Please select the panel dimension, the value should not be zero'), + 'nonzero',null,'client'); + $form->addRule('totalfees', _('Please select the panel dimension, the value should not be zero.'), + 'nonzero',null,'client'); - //Max length $form->addRule('companyname', _('The Company name should be 125 letters max.'), 'maxlength',125); @@ -228,15 +242,17 @@ 'maxlength',32); $form->addRule('address', _('The Address should be 125 letters max.'), - 'maxlength',125); - $form->addRule('telno', _('The Entered value should 32 letters max.'), - 'maxlength',32); - $form->addRule('faxno', _('The Entered value should 32 letters max.'), - 'maxlength',32); - $form->addRule('pobox', _('The Entered value should 32 letters max.'), - 'maxlength',32,'client'); - $form->addRule('panelsubject', _('The Entered value should 32 letters max.'), 'maxlength',125,'client'); + $form->addRule('telno', _('The Entered telephone value should 10 letters max.'), + 'maxlength',10,'client'); + $form->addRule('faxno', _('The Entered fax no should 10 letters max.'), + 'maxlength',10,'client'); + $form->addRule('mobileno', _('The Entered Mobile no should 10 letters max.'), + 'maxlength',10,'client'); + $form->addRule('pobox', _('The Entered pobox value should 6 letters max.'), + 'maxlength',6,'client'); + $form->addRule('panelsubject', _('The Entered Panel subject value should 32 letters max.'), + 'maxlength',125,'client'); $form->addRule('numberoflanes', _('The entered number of lanesvalue should be between 1 and 8.'), 'rangelength',array(0,1),'client'); $form->addRule('numberoflanes', _('The entered number of lanes value should be between 1 and 8.'), @@ -270,26 +286,12 @@ $form->addRule('notes', _('The entered value should be 125 letters max.'),'maxlength', 125); - $form->addRule('annualfees', _('Please select the panel dimension, the value should not be zero'), - 'numeric',null,'client'); - $form->addRule('panelarea', _('Please select the panel dimension, the value should not be zero'), - 'numeric',null,'client'); - $form->addRule('usefees', _('Please select the panel dimension, the value should not be zero'), - 'numeric',null,'client'); - $form->addRule('annualfees', _('Please select the panel dimension, the value should not be zero'), - 'nonzero',null,'client'); - $form->addRule('panelarea', _('Please select the panel dimension, the value should not be zero'), - 'nonzero',null,'client'); - $form->addRule('usefees', _('Please select the panel dimension, the value should not be zero'), - 'nonzero',null,'client'); - $form->addRule('totalfees', _('Please select the panel dimension, the value should not be zero.'), - 'nonzero',null,'client'); - + $form->Applyfilter('__ALL__',trim); $form->setRequiredNote('<span style="font-size:80%; color:#ff0000;" >*</span><span style="font-size:80%;"> '. _('denotes required field').'</span>'); - $form->setDefaults(array('panelcatagory'=>3,'facecount'=>1)); + $form->setDefaults(array('panelcatagory'=>3,'facecount'=>1,'boolrow'=>1)); } function update($do = false) { @@ -298,6 +300,7 @@ $this->paneldimension=substr($_POST['paneltypedimension'][2],-1); $this->x=$this->x; $this->y=$this->y; + //$this->image='test'; } return parent::update($do); @@ -310,6 +313,8 @@ $this->paneldimension=substr($_POST['paneltypedimension'][2],-1); $this->x=$this->x; $this->y=$this->y; + // $this->image='test'; + } @@ -322,13 +327,14 @@ isset($_REQUEST['y'])&&is_numeric($_REQUEST['y'])) { $this->x = (float) $_REQUEST['x']; $this->y = (float) $_REQUEST['y']; - + $objDB =& $this->getDatabaseConnection(); } } function preGenerateForm(&$fb){ - $this->fb_fieldLabels = array('panelcatagory' =>_('Panel Catagory:'), - 'companyname' => _('Company Name:'),'ownership' => _('Ownership:'), + + $this->fb_fieldLabels = array('companyname'=>_('Company Name:'),'panelcatagory' =>_('Panel Catagory:'), + 'ownership'=>_('Ownership:'), 'nationalno'=>_('National No.:'),'mothername'=>_('Mother Name:'), 'address'=>_('Address:'),'teleno'=>_('Telephone:'),'faxno'=>_('Fax No.:'), 'mobileno'=>_('Mobile No.:'),'pobox'=>_('Post box:'), @@ -349,8 +355,9 @@ 'insurancereceiptno'=>_('Insurance Receipt No.:'), 'insurancereceiptdate'=>_('Insurance Receipt Date:'),'contractno'=>_('Contract No:'), 'notes'=>_('Notes:'),'permitno'=>_('Permission No.:'), - 'permitdate'=>_('Permission Date:')); + 'registerno'=>_('Registeration No.:'),'boolrow'=>_('Right of Way')); + $this->fb_formHeaderText= _('Advertisement Panel Information Data Entry'); $this->fb_preDefElements = array(); $this->fb_ruleViolationMessage = _('%s: The value you have entered is not valid.'); @@ -371,32 +378,34 @@ <!-- function setitems(val){ if (val==1){ - document.forms[2][53].disabled=false + document.forms[2].contractno.disabled=false } if (val==3){ - document.forms[2][1].disabled=false - document.forms[2][3].disabled=true - document.forms[2][4].disabled=false - document.forms[2][5].disabled=false - document.forms[2][6].disabled=false - document.forms[2][7].disabled=false - document.forms[2][8].disabled=false - document.forms[2][9].disabled=false - document.forms[2][10].disabled=false - document.forms[2][53].disabled=true + document.forms[2].companyname.disabled=false + document.forms[2].registerno.disabled=false + document.forms[2].ownership.disabled=true + document.forms[2].nationalno.disabled=false + document.forms[2].mothername.disabled=false + document.forms[2].address.disabled=false + document.forms[2].teleno.disabled=false + document.forms[2].faxno.disabled=false + document.forms[2].mobileno.disabled=false + document.forms[2].pobox.disabled=false + document.forms[2].contractno.disabled=true } if (val==2){ - document.forms[2][1].disabled=true - document.forms[2][3].disabled=false - document.forms[2][4].disabled=true - document.forms[2][5].disabled=true - document.forms[2][6].disabled=true - document.forms[2][7].disabled=true - document.forms[2][8].disabled=true - document.forms[2][9].disabled=true - document.forms[2][10].disabled=true - document.forms[2][53].disabled=true + document.forms[2].companyname.disabled=true + document.forms[2].registerno.disabled=true + document.forms[2].ownership.disabled=false + document.forms[2].nationalno.disabled=true + document.forms[2].mothername.disabled=true + document.forms[2].address.disabled=true + document.forms[2].telenodisabled=true + document.forms[2].faxno.disabled=true + document.forms[2].mobileno.disabled=true + document.forms[2].pobox.disabled=true + document.forms[2].contractno.disabled=true } @@ -406,25 +415,26 @@ //alert (val); var passed = val; - //document.forms[2].panelarea.value="val"; - //document.forms[2].panelarea.value="val"; - //alert (document.forms[2][32].value); + var xpanel; - var Startindex = document.forms[2][35].value.search(/ /); - var Startannual = document.forms[2][35].value.search(/-/); - xpanel=document.forms[2][35].value.substr(0,Startindex); - var ypanel=document.forms[2][35].value.substr(Startindex+2,Startannual-(Startindex+2)); + var Startindex = document.forms[2][38].value.search(/ /); + + var Startannual = document.forms[2][38].value.search(/-/); + xpanel=document.forms[2][38].value.substr(0,Startindex); + var ypanel=document.forms[2][38].value.substr(Startindex+2,Startannual-(Startindex+2)); //Working to fill the area field. - //document.forms[2].panelarea.value=document.forms[2][35].value; - document.forms[2].panelarea.value=(ypanel*xpanel); - var StartUse = document.forms[2][35].value.search(/M/); - var StartPanel = document.forms[2][35].value.search(/P/); + //document.forms[2].panelarea.value=document.forms[2][38].value; + document.forms[2].panelarea.value=parseInt(ypanel*xpanel); + + + var StartUse = document.forms[2][38].value.search(/M/); + var StartPanel = document.forms[2][38].value.search(/P/); //Check the annual fees - document.forms[2].annualfees.value=document.forms[2][35].value.substr(Startannual+1,StartUse-(Startannual+1)); + document.forms[2].annualfees.value=document.forms[2][38].value.substr(Startannual+1,StartUse-(Startannual+1)); ////Check the Use fees - document.forms[2].usefees.value=document.forms[2][35].value.substr(StartUse+1,StartPanel-(StartUse+1)); - var annualfees = (document.forms[2][35].value.substr(Startannual+1,StartUse-(Startannual+1))); - var usefees=document.forms[2][35].value.substr(StartUse+1); + document.forms[2].usefees.value=document.forms[2][38].value.substr(StartUse+1,StartPanel-(StartUse+1)); + var annualfees = (document.forms[2][38].value.substr(Startannual+1,StartUse-(Startannual+1))); + var usefees=document.forms[2][38].value.substr(StartUse+1); //Check face count if(document.forms[2].facecount.length == undefined) @@ -439,28 +449,16 @@ } //alert (facecount); - var startmonth=document.forms[2][20].value; + var startmonth=document.forms[2][22].value; //alert (startmonth); var totalfees = (((ypanel*xpanel) * annualfees * facecount)+ parseInt(usefees))*((13-startmonth)/12); document.forms[2].totalfees.value=parseInt(totalfees); var applicationtype='; print_r("'".$_REQUEST['type']."'"); echo '; - document.forms[2].totalfees.disabled=true; - if (applicationtype=="new"){ - document.forms[2].totalfees.disabled=true; - document.forms[2].usefees.disabled=true; - document.forms[2].panelarea.disabled=true; - document.forms[2].annualfees.disabled=true; - - }else{ - document.forms[2].totalfees.disabled=false; - document.forms[2].usefees.disabled=false; - document.forms[2].panelarea.disabled=false; - document.forms[2].annualfees.disabled=false; - } + } } @@ -468,13 +466,39 @@ alert ("Hello"); } + function getpanelcost(){ + + var panelarea2=parseInt(document.forms[2].panelarea.value); + + var annualfees2=parseInt(document.forms[2].annualfees.value); + if(document.forms[2].facecount.length == undefined) + if(document.forms[2].facecount.checked) + return document.forms[2].facecount.value; + else + return ""; + for(var i = 0; i < document.forms[2].facecount.length; i++) { + if(document.forms[2].facecount[i].checked) { + var facecount= document.forms[2].facecount[i].value; + } + } + + + var usefees2=parseInt(document.forms[2].usefees.value); + var startmonth=document.forms[2][22].value; + var totalfeesclick = (((panelarea2*annualfees2)*facecount)+usefees2)*((13-startmonth)/12); + + document.forms[2].totalfees.value=totalfeesclick; + } + + + function setface(val){ if (val==2){ - document.forms[2][32].disabled=true - document.forms[2][32].checked=false - document.forms[2][31].checked=true + document.forms[2][34].disabled=true + document.forms[2][34].checked=false + document.forms[2][33].checked=true }else{ - document.forms[2][32].disabled=false + document.forms[2][34].disabled=false } } @@ -506,15 +530,10 @@ paneldimension="3 X 2-20M100P4"; } - document.forms[2][33].value=selectedvalue; - // document.forms[2][34].value=1; - //document.forms[2][32].value="5 X 4-50M500P2"; + document.forms[2][36].value=selectedvalue; + document.forms[2][36].disabled=true; - //alert (document.forms[2][32].value); - //location.href="?PHPSESSID='.session_id().'&routename="+val; - - } //checkvalue(1); _hs_swapOptions(document.forms[2],"paneltypedimension",0); @@ -651,7 +670,70 @@ "javascript:setface(this.options[this.selectedIndex].value);"); $this->fb_preDefElements['medianwidth'] = HTML_QuickForm::createElement( 'select', 'medianwidth', _('Median available'),$arryesno,$attrs); + $this->fb_preDefElements['image'] = HTML_QuickForm::createElement( + 'file', 'image', _('Panel image'),null,'client'); + + + if ($_REQUEST['type']=="old"){ + $this->fb_preDefElements['panelarea']=HTML_QuickForm::createElement( + 'text', 'panelarea', _('Panel Area:')); + $this->fb_preDefElements['usefees']=HTML_QuickForm::createElement( + 'text', 'usefees', _('Use fees')); + $this->fb_preDefElements['annualfees']=HTML_QuickForm::createElement( + 'text', 'annualfees', _('Annualfees')); + $this->fb_preDefElements['totalfees']=HTML_QuickForm::createElement( + 'text', 'totalfees', _('Total fees')); + $attrs = array('onchange' => + "javascript:getcost(0);",'onblur' => + "javascript:getcost(0);",'onclick' => + "javascript:getcost(0);"); + + $this->fb_preDefElements['date']=HTML_QuickForm::createElement( + 'date', 'date', _('Date'),array('minYear'=>'1975'),$attrs); + + }else{ + $this->fb_preDefElements['panelarea']=HTML_QuickForm::createElement( + 'text', 'panelarea', _('Panel Area'),array("readonly=true")); + $this->fb_preDefElements['usefees']=HTML_QuickForm::createElement( + 'text', 'usefees', _('Use fees'),array("readonly=true")); + $this->fb_preDefElements['annualfees']=HTML_QuickForm::createElement( + 'text', 'annualfees', _('Annualfees'),array("readonly=true")); + $this->fb_preDefElements['totalfees']=HTML_QuickForm::createElement( + 'text', 'totalfees', _('Total fees'),array("readonly=true")); + $attrs = array('onchange' => + "javascript:getcost(0);",'onblur' => + "javascript:getcost(0);",'onclick' => + "javascript:getcost(0);"); + + $this->fb_preDefElements['date']=HTML_QuickForm::createElement( + 'date', 'date', _('Date'),array('minYear'=>'2001'),$attrs); + + } + + $this->fb_preDefElements['registerno'] = HTML_QuickForm::createElement( + 'text', 'registerno', _('Registeration No.:'),array('onclick' => + "javascript:xajax_myFunction(this.value);",'onfocus' => + "javascript:xajax_myFunction(this.value);",'onblur' => + "javascript:xajax_myFunction(this.value);")); + + $this->fb_preDefElements['totalfees'] = HTML_QuickForm::createElement( + 'text', 'totalfees', _('Total fees:'),array('onclick' => + "getpanelcost();",'onfocus' => + "getpanelcost();",'onblur' => + "getpanelcost();")); + + $this->fb_preDefElements['boolrow'] = HTML_QuickForm::createElement( + 'select', 'boolrow', _('Right of Way:'),array(1=>_('Yes'),2=>_('No')),array('onclick' => + "if (this.options[this.selectedIndex].value==2) + { document.forms[2].usefees.value=0; getpanelcost(); } else { getcost(0); } ",'onblur' => + "if (this.options[this.selectedIndex].value==2) + { document.forms[2].usefees.value=0; getpanelcost(); }else { getcost(0); } ")); + + + + + } function preProcessForm(&$values) @@ -668,6 +750,9 @@ $this->routetype=$_POST['paneltypedimension'][0]; $this->paneltype=$_POST['paneltypedimension'][1]; + + + } /** * Return an HTML_Table containing all available translations. The table Modified: trunk/rapc/include/dataobject/rapc.ini =================================================================== --- trunk/rapc/include/dataobject/rapc.ini 2006-11-14 06:04:01 UTC (rev 10) +++ trunk/rapc/include/dataobject/rapc.ini 2006-11-14 07:29:50 UTC (rev 11) @@ -78,7 +78,10 @@ username = 2 insertdate = 6 permitno=2 -permitdate=6 +image=2 +registerno=2 +boolrow=130 + [public.panel__keys] id=K [public.translation] Modified: trunk/rapc/include/dataobject/rapc.links.ini =================================================================== --- trunk/rapc/include/dataobject/rapc.links.ini 2006-11-14 06:04:01 UTC (rev 10) +++ trunk/rapc/include/dataobject/rapc.links.ini 2006-11-14 07:29:50 UTC (rev 11) @@ -7,10 +7,10 @@ lightavailable=public.yesno:codedvalue medianwidth=public.yesno:codedvalue ownership=public.ownership:codedvalue +boolrow=public.yesno:codedvalue - [public.routedirection] codedvalue=public.routedirection:codedvalue Modified: trunk/rapc/script/create_rapc_ddl.sql =================================================================== --- trunk/rapc/script/create_rapc_ddl.sql 2006-11-14 06:04:01 UTC (rev 10) +++ trunk/rapc/script/create_rapc_ddl.sql 2006-11-14 07:29:50 UTC (rev 11) @@ -156,9 +156,9 @@ username varchar(32), insertdate date, permitno varchar(10), - permitdate date, image varchar(128), - registerno varchar(16) + registerno varchar(16), + boolrow integer ); create table ownership( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-11-14 06:04:53
|
Revision: 10 http://svn.sourceforge.net/rapc/?rev=10&view=rev Author: maher_karim Date: 2006-11-13 22:04:01 -0800 (Mon, 13 Nov 2006) Log Message: ----------- 2006-11-13 Maher Abdel karim <mah...@do...> * conf/dccssconfig.php.default: * conf/dccssconfig.php.default:Adjust parameter to save loaded images. * conf/identifyplugin.php: * conf/identifyplugin.php.default:Adjust layer name and path for plugin. * print.php:added the possibility to print inspection sheets. * rapc.nsi:adjust installer to include xajax folder and files. Modified Paths: -------------- trunk/rapc/changelog trunk/rapc/conf/identifyplugin.ini.default trunk/rapc/conf/rapc_en.map trunk/rapc/print.php trunk/rapc/rapc.nsi This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-11-14 06:04:17
|
Revision: 10 http://svn.sourceforge.net/rapc/?rev=10&view=rev Author: maher_karim Date: 2006-11-13 22:04:01 -0800 (Mon, 13 Nov 2006) Log Message: ----------- 2006-11-13 Maher Abdel karim <mah...@do...> * conf/dccssconfig.php.default: * conf/dccssconfig.php.default:Adjust parameter to save loaded images. * conf/identifyplugin.php: * conf/identifyplugin.php.default:Adjust layer name and path for plugin. * print.php:added the possibility to print inspection sheets. * rapc.nsi:adjust installer to include xajax folder and files. Modified Paths: -------------- trunk/rapc/changelog trunk/rapc/conf/identifyplugin.ini.default trunk/rapc/conf/rapc_en.map trunk/rapc/print.php trunk/rapc/rapc.nsi Modified: trunk/rapc/changelog =================================================================== --- trunk/rapc/changelog 2006-11-09 05:59:28 UTC (rev 9) +++ trunk/rapc/changelog 2006-11-14 06:04:01 UTC (rev 10) @@ -1,3 +1,12 @@ +2006-11-13 Maher Abdel karim <mah...@do...> + + * conf/dccssconfig.php.default: + * conf/dccssconfig.php.default:Adjust parameter to save loaded images. + * conf/identifyplugin.php: + * conf/identifyplugin.php.default:Adjust layer name and path for plugin. + * print.php:added the possibility to print inspection sheets. + * rapc.nsi:adjust installer to include xajax folder and files. + 2006-11-6 Maher Abdel karim <mah...@do...> * address_confirmation.php:fix to deal with multiple results, and zoom to Modified: trunk/rapc/conf/identifyplugin.ini.default =================================================================== --- trunk/rapc/conf/identifyplugin.ini.default 2006-11-09 05:59:28 UTC (rev 9) +++ trunk/rapc/conf/identifyplugin.ini.default 2006-11-14 06:04:01 UTC (rev 10) @@ -9,10 +9,10 @@ [Plugin1] ; Location of the image files in the file system (A directory). ; The token '%s' will be replaced by field value -ImageLocation = "c:\program files\dccss\data\plugin\%s\" +ImageLocation = "c:\program files\rapc\data\plugin\%s\" ; Location of the image files on the web server. A (preferably relative) URL. ; The token '%s' will be replaced by field value. -ImageLocationURL = "/dccss/data/plugin/%s/"; +ImageLocationURL = "/rapc/data/plugin/%s/"; ; Pattern to filter directory contents. ; A PERL regular expression. Pattern = "/.*\.[jJ][pP][gG]$/" Modified: trunk/rapc/conf/rapc_en.map =================================================================== --- trunk/rapc/conf/rapc_en.map 2006-11-09 05:59:28 UTC (rev 9) +++ trunk/rapc/conf/rapc_en.map 2006-11-14 06:04:01 UTC (rev 10) @@ -111,7 +111,11 @@ CLASS NAME 'Adminsub.shp' TEMPLATE 'template.html' - + #RASTERFILL_STYLE_SOLID + STYLE + #COLOR 255 251 195 + BACKGROUNDCOLOR 255 255 255 + END #STYLE #OUTLINE SYMBOL STYLE OUTLINECOLOR 0 0 0 Modified: trunk/rapc/print.php =================================================================== --- trunk/rapc/print.php 2006-11-09 05:59:28 UTC (rev 9) +++ trunk/rapc/print.php 2006-11-14 06:04:01 UTC (rev 10) @@ -79,8 +79,8 @@ <table border="1" summary="Map" width="98%" height="80%" cellspacing="0" cellpadding="0" nowrap="nowrap"> <tr> - - <td width="90%" height="80%" valign="top"> <?php + + <td width="90%" height="80%" valign="top"> <?php if ($_REQUEST['action']!='AC'){ $map_path="./"; $map = ms_newMapObj($map_path.sprintf($_SESSION["strMapFile"], @@ -195,12 +195,24 @@ $image_url ?>" alt="Workorder Map" style="width: 33cm; height: 25cm;"/></a> </td> + <?php + if (($_REQUEST['vill_no']!=0) && ($_REQUEST['vill_no']!='')){ + echo ('<td><table>'); + echo('<tr><td>Village No.:'.$_REQUEST['vill_no'].'</td></tr>'); + echo('<tr><td>Block No.:'.$_REQUEST['block'].'</td></tr>'); + echo('<tr><td>Sector No.:'.$_REQUEST['sector'].'</td></tr>'); + echo('<tr><td>Plot No.:'.$_REQUEST['plot'].'</td></tr>'); + echo('</table></td>');} + ?> </tr> - <tr><td><IMG SRC=<?=$url?> BORDER=0 ></td> - <td><img alt="North arrow" src="images/northarrow.png" ></td> + <tr><td> + <table><tr><td><IMG SRC=<?=$url?> BORDER=0 ></td> + <td><img width=25 height=25 alt="North arrow" src="images/northarrow.png" ></td></tr></table></td> + </tr> + </table> Modified: trunk/rapc/rapc.nsi =================================================================== --- trunk/rapc/rapc.nsi 2006-11-09 05:59:28 UTC (rev 9) +++ trunk/rapc/rapc.nsi 2006-11-14 06:04:01 UTC (rev 10) @@ -234,6 +234,7 @@ File "include\dcmpostgis.php" File "include\header.php" File "include\i18n.php" + File "include\xajax*.*" IfFileExists "$INSTDIR\conf\dccssconfig.php" keep_config File /oname=dccssconfig.php "conf\dccssconfig.php.default" ; Write PGCLIENTBINDIRECTORY to dcmconfig.php @@ -246,6 +247,9 @@ File "include\dataobject\RAPC.links.ini" File "include\dataobject\*.php" + SetOutPath "$INSTDIR\include\xajax_js" + File "include\xajax_js\*.js" + SetOutPath "$INSTDIR\doc\administration" File "doc\administration\RAPC_administration_guide.pdf" File "doc\administration\RAPC_administration_guide.chm" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-11-09 06:01:36
|
Revision: 9 http://svn.sourceforge.net/rapc/?rev=9&view=rev Author: maher_karim Date: 2006-11-08 21:59:28 -0800 (Wed, 08 Nov 2006) Log Message: ----------- 2006-11-06 Maher Abdel karim <mah...@do...> * images/*.*: add flyer images. Added Paths: ----------- trunk/rapc/etc/images/ trunk/rapc/etc/images/1.PNG trunk/rapc/etc/images/2.PNG trunk/rapc/etc/images/3.PNG trunk/rapc/etc/images/6.PNG trunk/rapc/etc/images/7.PNG trunk/rapc/etc/images/rapc_dataentry.png trunk/rapc/etc/images/rapc_index.png trunk/rapc/etc/images/rapc_map.png This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-11-09 06:01:35
|
Revision: 9 http://svn.sourceforge.net/rapc/?rev=9&view=rev Author: maher_karim Date: 2006-11-08 21:59:28 -0800 (Wed, 08 Nov 2006) Log Message: ----------- 2006-11-06 Maher Abdel karim <mah...@do...> * images/*.*: add flyer images. Added Paths: ----------- trunk/rapc/etc/images/ trunk/rapc/etc/images/1.PNG trunk/rapc/etc/images/2.PNG trunk/rapc/etc/images/3.PNG trunk/rapc/etc/images/6.PNG trunk/rapc/etc/images/7.PNG trunk/rapc/etc/images/rapc_dataentry.png trunk/rapc/etc/images/rapc_index.png trunk/rapc/etc/images/rapc_map.png Added: trunk/rapc/etc/images/1.PNG =================================================================== (Binary files differ) Property changes on: trunk/rapc/etc/images/1.PNG ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/etc/images/2.PNG =================================================================== (Binary files differ) Property changes on: trunk/rapc/etc/images/2.PNG ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/etc/images/3.PNG =================================================================== (Binary files differ) Property changes on: trunk/rapc/etc/images/3.PNG ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/etc/images/6.PNG =================================================================== (Binary files differ) Property changes on: trunk/rapc/etc/images/6.PNG ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/etc/images/7.PNG =================================================================== (Binary files differ) Property changes on: trunk/rapc/etc/images/7.PNG ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/etc/images/rapc_dataentry.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/etc/images/rapc_dataentry.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/etc/images/rapc_index.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/etc/images/rapc_index.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/etc/images/rapc_map.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/etc/images/rapc_map.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-11-09 05:56:48
|
Revision: 8 http://svn.sourceforge.net/rapc/?rev=8&view=rev Author: maher_karim Date: 2006-11-08 21:56:11 -0800 (Wed, 08 Nov 2006) Log Message: ----------- 2006-11-6 Maher Abdel karim <mah...@do...> * address_confirmation.php:fix to deal with multiple results, and zoom to extent. * print.php:deal with address confirmation result.Adjust print layout. 2006-11-5 Maher Abdel karim <mah...@do...> * address_confirmation.php: * map.php:deal with variable passing for AC. * panelinstallation_report.php:adjust date display based on fatimah's remarks. * panelpage.php: * include/public_panel.php:deal with mpwh remarks, and fix the image loading. 2006-10-31 Maher Abdel karim <mah...@do...> * map.php: add new action. * script/create_rapc_ddl.sql: * address_confirmation.php:add address confirmation functionality. * admin/user_management.php:user management tools. 2006-10-17 Maher Abdel karim <mah...@do...> * etc/rapc_flyer.sla:rapc flyer. * dccssconfig.php.default * dccssconfig.php:Add new variables for image loading handling. * dataobject/public_panel.php:Add image loading functionality,regiteration no,adjust calculations filling. * dataobject/rapc.ini:add image, and registerno fields * script/create_rapc_ddl.sql:add image, and regiterno fields to panel table. * index.php:Add ministry logos. * panelpage.php:introduce move_file(),implement xajax for regiterno field. * include/xajax_js/*:files needed to implement xajax Added Paths: ----------- trunk/rapc/admin/user_management.php Added: trunk/rapc/admin/user_management.php =================================================================== --- trunk/rapc/admin/user_management.php (rev 0) +++ trunk/rapc/admin/user_management.php 2006-11-09 05:56:11 UTC (rev 8) @@ -0,0 +1,341 @@ +<?php +/* RAPC -- DC Maintenance Management System + * + * user_management.php - simple user management for the RAPC application + * + * Copyright (C) 2003,2004 DORSCH Consult, NGWA + * Copyright (C) 2005 DORSCH Consult + * Copyright (C) 2006 DC Water and Environment + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +// This page allows to pass the following actions via the request: +// add_user - add a new RAPC user: enter username and password +// create_user - create a new user after username and password have been entered +// edit_user - edit the user attributes; user_name has to be passed +// update_user - update the user attributes in the database; user_name has to be passed +// toggle_administrator - give admin rights to a user; user_name has to be passed +// remove_user - drop a user in the database; user_name has to be passed +/** + * \todo Allow to set AdministrativeArea to NULL. + */ +$strPathInDccss = '../'; +include("../include/header.php"); +include("../include/dcmpostgis.php"); +include("Pager/Pager.php"); +$dccssPage = new DccssPage(basename(__FILE__)); +$dccssPage->strPathInRapc = '../'; +$dccssPage->header("User Management", TRUE, "", "system-config-users-48.png"); +if(!pg_is_administrator($_SESSION["UserName"])) { ?> + <p class="important"><?= _("This page is for RAPC administrators only.") + ?></p><?php +} else { + // handle actions from the request + if(array_key_exists("action", $_REQUEST)) { + $strMessage = ""; + switch($_REQUEST["action"]) { + case "add_user" : ?> + <form name="password" method="post" action= + "user_management.php?action=create_user&pageID=<?= + isset($_REQUEST['pageID']) ? $_REQUEST['pageID'] : '1' ?>"> + <table summary="password"><?php + $dccssPage->printTextInput("UserName", $_POST, "", + _("The name of the RAPC user to be created."), _("User Name:"), + ""); + $dccssPage->printTextInput("Password", $_POST, "", + _("The password of the new user."), _("Password:"), "password"); + $arrQuery = array(); + $query = 'select codedvalue, '.pg_localize('name', + 'administrativearea').' from administrativearea'; + $result = pg_exec($query); + $arrResult = array(); + while($arrRow = pg_fetch_row($result)) { + array_push($arrResult, $arrRow); + } + + $dccssPage->printSelect("AdministrativeArea", $arrResult, $arrQuery, + _("Select the Administrative area."), false, "", true); ?> + <tr><td> </td><td> + <input type="submit" name="submit" value="<?= _("Create user") ?>" + title="<?= _('Click this button to create the new user.') ?>" /></td></tr> + </table> + </form><?php + $dccssPage->footer("$Date: 2006-07-05 15:10:01 +0200 (الاربعاء, 05 تموز 2006) $Empty"); + exit(); + break; + case "create_user" : + if((array_key_exists("UserName", $_POST))&& + (array_key_exists("Password", $_POST))&& + (array_key_exists("AdministrativeArea", $_POST) && + ($_POST["Password"] != "")&&($_POST["UserName"] != "")&& + (is_numeric($_POST["AdministrativeArea"])))) { + $strCreate = "create user ".$_POST["UserName"]." password '". + $_POST["Password"]."'; alter group rapcuser add user ". + $_POST["UserName"]; + $strInsertToTable = "insert into rapcuser values ('".$_POST["UserName"]. + "',".$_POST["AdministrativeArea"].',false)'; + + @$objResult = pg_query($strCreate); + if($objResult) { + @$objResult = pg_query($strInsertToTable); + $dccssPage->writelog($strInsertToTable); + $strMessage = sprintf( + _("Successfully created user '%s'."), + $_POST["UserName"]); + } else { + $strMessage = sprintf( + _("Failed to create user '%s'."), + $_POST["UserName"]); + } + } else { + if(isset($POST['UserName'])) { + $strMessage = sprintf( + _("Failed to create user '%s'."), + $_POST["UserName"]); + } + } + break; + case "edit_user" : + if(array_key_exists("user_name", $_REQUEST)) { ?> + <h2><?= sprintf(_("Edit User '%s'"), $_REQUEST["user_name"]); ?></h2> + <form name="password" method="post" action= + "user_management.php?action=update_user&user_name=<?= + urlencode($_REQUEST["user_name"]) ?>&pageID=<?= isset($_REQUEST['pageID']) ? $_REQUEST['pageID'] : '1' ?>"> + <table summary="password"><?php + $strQuery = "select AdministrativeArea from RapcUser where name='". + $_REQUEST["user_name"]."'"; + $objResult = pg_query($strQuery); + $dccssPage->printTextInput("Password", $_POST, "", + _("The password of the user."), _("Password:"), "password"); + $arrQuery = array(); + $query = 'select codedvalue, '.pg_localize('name', + 'administrativearea').' from administrativearea'; + $result = pg_exec($query); + $arrResult = array(); + while($arrRow = pg_fetch_row($result)) { + array_push($arrResult, $arrRow); + } + $arrQuery = pg_fetch_assoc($objResult); + $dccssPage->printSelect("AdministrativeArea", $arrResult, $arrQuery, + _("Select the administrative area."), false, "", false); ?> + <tr><td> </td><td> + <input type="submit" name="submit" value="<?= _("Save") ?>" + title="<?= _('Click this button to save the information.') ?>"/></td></tr> + </table> + </form><?php + $dccssPage->footer("$Date: 2006-07-05 15:10:01 +0200 (الاربعاء, 05 تموز 2006) $Empty"); + exit(); + } + break; + case "update_user" : + if(array_key_exists("user_name", $_REQUEST)) { + if((array_key_exists("Password", $_POST))&& + ($_POST["Password"] != "")) { + $strAlter = "alter user ".$_REQUEST["user_name"]." password '". + $_POST["Password"]."'"; + @$objResult = pg_query($strAlter); + if($objResult) { + $dccssPage->writelog($strAlter); + $strMessage = sprintf( + _("Successfully updated the password of user '%s'."), + $_REQUEST["user_name"]); + } else { + $strMessage = sprintf( + _("Failed to update the password of user '%s'."), + $_REQUEST["user_name"]); + } + } + if((array_key_exists("AdministrativeArea", $_POST))&& + ($_POST["AdministrativeArea"] != "")) { + $strAlter = "update RapcUser set AdministrativeArea=". + $_POST["AdministrativeArea"]." where name='". + $_REQUEST["user_name"]."'"; + @$objResult = pg_query($strAlter); + if($objResult) { + $dccssPage->writelog($strAlter); + $strMessage = $strMessage." ".sprintf( + _("Successfully updated the administrative area of user '%s'."), + $_REQUEST["user_name"]); + } else { + $strMessage = $strMessage." ".sprintf( + _("Failed to update the administrative area of user '%s'."), + $_REQUEST["user_name"]); + } + } + + } + break; + case "toggle_administrator" : + if(array_key_exists("user_name", $_REQUEST)) { + $strAlterUser = "alter user ".$_REQUEST["user_name"]." "; + $strAlterGroup = "alter group rapcadministrator "; + if(pg_is_administrator($_REQUEST["user_name"])) { + $strAlterUser = $strAlterUser."nocreateuser"; + $strAlterGroup = $strAlterGroup."drop"; + } else { + $strAlterUser = $strAlterUser."createuser"; + $strAlterGroup = $strAlterGroup."add"; + } + $strQuery = $strAlterUser."; ".$strAlterGroup." user ". + $_REQUEST["user_name"]; + @$objResult = pg_query($strQuery); + if($objResult) { + $dccssPage->writelog($strQuery); + $strMessage = sprintf( + _("Successfully updated the priviledges of user '%s'."), + $_REQUEST["user_name"]); + } else { + $strMessage = sprintf( + _("Failed to update the priviledges of user '%s'."), + $_REQUEST["user_name"]); + } + } + break; + case "remove_user" : + if(array_key_exists("user_name", $_REQUEST)) { + $strDrop = "drop user ".$_REQUEST["user_name"]; + $strDropUserFromTable = "delete from rapcuser where name='". + $_REQUEST["user_name"]."'"; + //print_r($strDropUserFromTable); + @$objResult = pg_query($strDrop); + if($objResult) { + $dccssPage->writelog($strDrop); + $strMessage = sprintf( + _("Successfully removed user '%s'."), + $_REQUEST["user_name"]); + @$objResult = pg_query($strDropUserFromTable); + } else { + $strMessage = sprintf( + _("Failed to remove user '%s'."), + $_REQUEST["user_name"]); + } + } + break; + case 'toggle_landmarkeditor' : + if(!isset($_REQUEST['user_name'])) { + break; + } + $strToggleLandmarkEditor = 'update RapcUser set IsLandmarkEditor = not + IsLandmarkEditor where Name = \''. + $_REQUEST['user_name'].'\''; + //echo($strToggleLandmarkEditor); + @$objResult = pg_query($strToggleLandmarkEditor); + if($objResult) { + $dccssPage->writelog($strToggleLandmarkEditor); + $strMessage = sprintf( + _('Successfully changed the landmark editor role of user "%s".'), + $_REQUEST['user_name']); + } else { + $strMessage = sprintf( + _('Failed to change the landmark editor role of user "%s".'), + $_REQUEST['user_name']); + } + break; + } + ?><p class="important"><?= $strMessage ?></p> <?php + } ?> + <p><a href="user_management.php?PHPSESSID=<?= session_id() + ?>&action=add_user&pageID=<?= isset($_REQUEST['pageID']) ? + $_REQUEST['pageID'] : '1' ?>" title="<?= _("Create a new RAPC user.")?>"><?= + _("Add User") ?></a></p><?php + + // display the user table + $arrUserIDs = pg_get_group_array("rapcuser"); + $arrAdminIDs = pg_get_group_array("rapcadministrator"); + + $params['totalItems'] = count($arrUserIDs); + $params['perPage'] = 10; + $params['nextImg'] = _('Next >>'); + $params['prevImg'] = _('<< Back'); + $pager =& Pager::factory($params); + $data = $pager->getPageData(); + $links = $pager->getLinks(); + list($from, $to) = $pager->getOffsetByPageId(); + + $strQuery = "select usename as username, usename as username,usename,usename as username,usename as". + " username, coalesce(".pg_localize('name', 'AdministrativeArea'). + ", '')as AdministrativeArea, IsLandmarkEditor as LandmarkEditor from ". + "pg_user,RapcUser left outer join AdministrativeArea on + AdministrativeArea.CodedValue = RapcUser.AdministrativeArea where ". + "usename=RapcUser.Name and ". + " ("; + foreach($arrUserIDs as $strUserID) { + $strQuery = $strQuery."usesysid=".$strUserID." or "; + } + $strQuery = $strQuery." 1 = 0) order by usesysid limit ".$params['perPage']. " offset ".($from-1) ; + echo($strQuery); + + $arrActions = array( + _("Edit") => "user_management.php?action=edit_user&user_name=", + _("Toggle Administrator") => + "user_management.php?action=toggle_administrator&user_name=", + _("Remove") => "user_management.php?action=remove_user&user_name=", + _('Toggle Landmark Editor') => + 'user_management.php?action=toggle_landmarkeditor&user_name='); + $arrHelp = array( + _("Edit") => _("Edit RAPC user attributes."), + _("Toggle Administrator") => + _("Make the user a RAPC administrator and vice versa."), + _("Remove") => _("Delete a RAPC user."), + _('Toggle Landmark Editor') => + _('Make the user a landmark editor and vice versa.')); + $result = pg_exec($strQuery); + + $numFields = pg_numfields($result); ?> + <table summary="RAPC users"> + <tr><?php + $numActions = count($arrActions); + for($i = $numActions; $i < $numFields; $i++) { + echo("<th>"._(pg_fieldname($result,$i))."</th>"); + } ?> + <th><?= _("Administrator") ?></th> <?php + if($numActions > 0) { + echo("<th>"._("Action")."</th>"); + }?> + </tr><?php + $arrActionKeys = array_keys($arrActions); + $arrActions = array_values($arrActions); + while($arrRow = pg_fetch_row($result)) { + + echo("<tr>"); + for($i = $numActions; $i < $numFields; $i++) { + if($arrRow[$i]!=""){ + echo("<td>"._($arrRow[$i])."</td>"); + }else{ + echo("<td>"." "."</td>"); + } + } ?> + <td><?= pg_is_administrator($arrRow[1], $arrAdminIDs) ? _("yes") : _("no") + ?></td> <?php + if($numActions > 0) { + echo("<td>"); + for($j = 0; $j < $numActions; $j++) { + echo("<a href=\"".$arrActions[$j].urlencode($arrRow[$j]).'&pageID='. + (isset($_REQUEST['pageID']) ? $_REQUEST['pageID'] : '1' )."\" title=\"". + $arrHelp[$arrActionKeys[$j]]."\">". + _($arrActionKeys[$j])."</a> "); + } + echo("</td>"); + } + echo("</tr>"); + } ?> + </table> + <p><?= sprintf(_("Displaying [%s - %s] of %s"), $from, $to, + $pager->_totalItems) ?> </p> + <p><?= $links["back"]." ".$links["pages"]." ".$links["next"] ?></p> <?php +} +$dccssPage->footer("$Date: 2006-07-05 15:10:01 +0200 (الاربعاء, 05 تموز 2006) $Empty"); ?> + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-11-09 05:56:37
|
Revision: 8 http://svn.sourceforge.net/rapc/?rev=8&view=rev Author: maher_karim Date: 2006-11-08 21:56:11 -0800 (Wed, 08 Nov 2006) Log Message: ----------- 2006-11-6 Maher Abdel karim <mah...@do...> * address_confirmation.php:fix to deal with multiple results, and zoom to extent. * print.php:deal with address confirmation result.Adjust print layout. 2006-11-5 Maher Abdel karim <mah...@do...> * address_confirmation.php: * map.php:deal with variable passing for AC. * panelinstallation_report.php:adjust date display based on fatimah's remarks. * panelpage.php: * include/public_panel.php:deal with mpwh remarks, and fix the image loading. 2006-10-31 Maher Abdel karim <mah...@do...> * map.php: add new action. * script/create_rapc_ddl.sql: * address_confirmation.php:add address confirmation functionality. * admin/user_management.php:user management tools. 2006-10-17 Maher Abdel karim <mah...@do...> * etc/rapc_flyer.sla:rapc flyer. * dccssconfig.php.default * dccssconfig.php:Add new variables for image loading handling. * dataobject/public_panel.php:Add image loading functionality,regiteration no,adjust calculations filling. * dataobject/rapc.ini:add image, and registerno fields * script/create_rapc_ddl.sql:add image, and regiterno fields to panel table. * index.php:Add ministry logos. * panelpage.php:introduce move_file(),implement xajax for regiterno field. * include/xajax_js/*:files needed to implement xajax Added Paths: ----------- trunk/rapc/admin/user_management.php This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-11-09 05:43:58
|
Revision: 7 http://svn.sourceforge.net/rapc/?rev=7&view=rev Author: maher_karim Date: 2006-11-08 21:43:31 -0800 (Wed, 08 Nov 2006) Log Message: ----------- 2006-11-6 Maher Abdel karim <mah...@do...> * address_confirmation.php:fix to deal with multiple results, and zoom to extent. * print.php:deal with address confirmation result.Adjust print layout. 2006-11-5 Maher Abdel karim <mah...@do...> * address_confirmation.php: * map.php:deal with variable passing for AC. * panelinstallation_report.php:adjust date display based on fatimah's remarks. * panelpage.php: * include/public_panel.php:deal with mpwh remarks, and fix the image loading. 2006-10-31 Maher Abdel karim <mah...@do...> * map.php: add new action. * script/create_rapc_ddl.sql: * address_confirmation.php:add address confirmation functionality. * admin/user_management.php:user management tools. 2006-10-17 Maher Abdel karim <mah...@do...> * etc/rapc_flyer.sla:rapc flyer. * dccssconfig.php.default * dccssconfig.php:Add new variables for image loading handling. * dataobject/public_panel.php:Add image loading functionality,regiteration no,adjust calculations filling. * dataobject/rapc.ini:add image, and registerno fields * script/create_rapc_ddl.sql:add image, and regiterno fields to panel table. * index.php:Add ministry logos. * panelpage.php:introduce move_file(),implement xajax for regiterno field. * include/xajax_js/*:files needed to implement xajax Added Paths: ----------- trunk/rapc/address_confirmation.php This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-11-09 05:43:57
|
Revision: 7 http://svn.sourceforge.net/rapc/?rev=7&view=rev Author: maher_karim Date: 2006-11-08 21:43:31 -0800 (Wed, 08 Nov 2006) Log Message: ----------- 2006-11-6 Maher Abdel karim <mah...@do...> * address_confirmation.php:fix to deal with multiple results, and zoom to extent. * print.php:deal with address confirmation result.Adjust print layout. 2006-11-5 Maher Abdel karim <mah...@do...> * address_confirmation.php: * map.php:deal with variable passing for AC. * panelinstallation_report.php:adjust date display based on fatimah's remarks. * panelpage.php: * include/public_panel.php:deal with mpwh remarks, and fix the image loading. 2006-10-31 Maher Abdel karim <mah...@do...> * map.php: add new action. * script/create_rapc_ddl.sql: * address_confirmation.php:add address confirmation functionality. * admin/user_management.php:user management tools. 2006-10-17 Maher Abdel karim <mah...@do...> * etc/rapc_flyer.sla:rapc flyer. * dccssconfig.php.default * dccssconfig.php:Add new variables for image loading handling. * dataobject/public_panel.php:Add image loading functionality,regiteration no,adjust calculations filling. * dataobject/rapc.ini:add image, and registerno fields * script/create_rapc_ddl.sql:add image, and regiterno fields to panel table. * index.php:Add ministry logos. * panelpage.php:introduce move_file(),implement xajax for regiterno field. * include/xajax_js/*:files needed to implement xajax Added Paths: ----------- trunk/rapc/address_confirmation.php Added: trunk/rapc/address_confirmation.php =================================================================== --- trunk/rapc/address_confirmation.php (rev 0) +++ trunk/rapc/address_confirmation.php 2006-11-09 05:43:31 UTC (rev 7) @@ -0,0 +1,124 @@ +<?php +/* rapc -- DC Road Advertisement Panel Control + * + * Query.php - Query database + * + * Copyright (C) 2006 DORSCH Consult + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ +require_once('include/dccssPage.php'); +require_once('include/dcmmspear.php'); +//Required for database connection +require_once('include/dcmpostgis.php'); +// Required for quick form building. +require_once('HTML/QuickForm.php'); + +$RolPage = new RolPage('Address Confirmation'); +$Queryform = new HTML_QuickForm('ACForm'); +$Queryform->addElement('header', null, _('Address Confirmation')); +$Queryform->addElement('text','village',_('Village No.:')); +$Queryform->addElement('text','block',_('Block No.:')); +$Queryform->addElement('text','sector',_('Sector No.:')); +$arrNumber = array('plot_no'=>_('DLS'),'plot_css'=> +_('Comprehensive subscriber survey numbering'),'plot_jva'=>_('JVA'),'plot_hudd'=>_('HUDD')); +$Queryform->addElement('select','numbering',_('Numbering type::'),$arrNumber); +$Queryform->addElement('text','plot',_('Plot No.:')); +$Queryform->addElement('submit',_('Submit'),_('Submit')); +$Queryform->addRule('village', _('The Village number should be numeric.'), + 'numeric', null, $_SESSION["strHtmlQuickFormValidation"]); + $Queryform->addRule('block', _('The Block number should be numeric.'), + 'numeric', null, $_SESSION["strHtmlQuickFormValidation"]); + $Queryform->addRule('sector', _('The Sector number should be numeric.'), + 'numeric', null, $_SESSION["strHtmlQuickFormValidation"]); + $Queryform->addRule('plot', _('The Plot number should be numeric.'), + 'numeric', null, $_SESSION["strHtmlQuickFormValidation"]); + +$Queryform->addRule('village', _('The Village number should be numeric.'), + 'required', null, $_SESSION["strHtmlQuickFormValidation"]); + $Queryform->addRule('block', _('The Block number should be numeric.'), + 'required', null, $_SESSION["strHtmlQuickFormValidation"]); + $Queryform->addRule('sector', _('The Sector number should be numeric.'), + 'required', null, $_SESSION["strHtmlQuickFormValidation"]); + $Queryform->addRule('plot', _('The Plot number should be numeric.'), + 'required', null, $_SESSION["strHtmlQuickFormValidation"]); + + + +if ($Queryform->validate()){ + /* + $searchvalue='vill_no='.$_POST['village'].' and block_no='.$_POST['block']. + ' and sector_no='.$_POST['secotr'].' and '.$_POST['numbering'].'='.$_POST['plot']; + header('Location: map.php?fieldname='. + $_POST['numbering'].'&action=AC&vill_no='. + $_POST['village'].'&block='.$_POST['block'].'§or='.$_POST['sector'].'&plot='.$_POST['plot']); + unset ($_REQUEST); + */ + $gpoMap = ms_newMapObj(sprintf($_SESSION["strMapFile"], + substr($_SESSION['language'], 0, 2))); + +if(array_key_exists("PATH_TRANSLATED", $_SERVER)) { + $gpoMap->set("shapepath", str_replace("map.php","data",str_replace("\\", "/", + $_SERVER["PATH_TRANSLATED"]))); +} +$objLayer = $gpoMap->getlayerbyname('basemap'); + $strExp="([VILL_NO]=".$_POST['village']." and [BLOCK_NO]=".$_POST['block']." AND [".$_POST['numbering']."]=".$_POST['plot'].")"; + + if ($_POST['block']!=0){ + if ($objLayer->queryByAttributes('VILL_NO',$strExp,MS_MULTIPLE) ==MS_SUCCESS) { + + $ResultCount=$objLayer->getNumResults(); + $RolPage->add(_("Total No. of records found is:#").$objLayer->getNumResults()."<br>"); + if ($ResultCount!=0){ + $gbShowQueryResults = TRUE; + for ($i=0; $i < $ResultCount; $i++) { + $QueryResult=$objLayer->getResult($i); + $Risultato=$QueryResult->shapeindex; + $objLayer->open(); + $Shape=$objLayer->getShape(0,$Risultato); + + $oExtents=$Shape->bounds; + //print_r($oExtents); + $objLayer->close(); + $gpoMap->setextent($oExtents->minx-10,$oExtents->miny-10,$oExtents->maxx+10,$oExtents->maxy+10); + + + } + $RolPage->add("<a href=map.php?fieldname=".$_POST['numbering']."&action=AC&vill_no=". + $_POST['village']."&block=".$_POST['block']."§or=".$_POST['sector']. + "&plot=".$_POST['plot'].">"._("Dispaly on Map")."</a><br>"); + + $RolPage->add("<a href=print.php?fieldname=".$_POST['numbering']."&action=AC&vill_no=". + $_POST['village']."&block=".$_POST['block']."§or=".$_POST['sector']. + "&plot=".$_POST['plot'].">"._("Print map")."</a><br>"); + + } + + + + } + + } else { + $strMessages = $strMessages._(("Nothing found")); + } + +}else{ + $RolPage->add(_('Nothing Processed')); +} +$RolPage->add($Queryform->tohtml()); +echo $RolPage->toHTML(); + +?> + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-11-07 13:07:37
|
Revision: 6 http://svn.sourceforge.net/rapc/?rev=6&view=rev Author: maher_karim Date: 2006-11-07 05:05:49 -0800 (Tue, 07 Nov 2006) Log Message: ----------- 2006-11-6 Maher Abdel karim <mah...@do...> * address_confirmation.php:fix to deal with multiple results, and zoom to extent. * print.php:deal with address confirmation result.Adjust print layout. 2006-11-5 Maher Abdel karim <mah...@do...> * address_confirmation.php: * map.php:deal with variable passing for AC. * panelinstallation_report.php:adjust date display based on fatimah's remarks. * panelpage.php: * include/public_panel.php:deal with mpwh remarks, and fix the image loading. 2006-10-31 Maher Abdel karim <mah...@do...> * map.php: add new action. * script/create_rapc_ddl.sql: * address_confirmation.php:add address confirmation functionality. * admin/user_management.php:user management tools. 2006-10-17 Maher Abdel karim <mah...@do...> * etc/rapc_flyer.sla:rapc flyer. * dccssconfig.php.default * dccssconfig.php:Add new variables for image loading handling. * dataobject/public_panel.php:Add image loading functionality,regiteration no,adjust calculations filling. * dataobject/rapc.ini:add image, and registerno fields * script/create_rapc_ddl.sql:add image, and regiterno fields to panel table. * index.php:Add ministry logos. * panelpage.php:introduce move_file(),implement xajax for regiterno field. * include/xajax_js/*:files needed to implement xajax Modified Paths: -------------- trunk/rapc/changelog trunk/rapc/conf/dccssconfig.php trunk/rapc/conf/dccssconfig.php.default trunk/rapc/conf/rapc_en.map trunk/rapc/include/i18n.php trunk/rapc/locale/ar/LC_MESSAGES/rapc.po trunk/rapc/map.php trunk/rapc/panelinstallation_report.php trunk/rapc/panelpage.php trunk/rapc/print.php trunk/rapc/script/create_rapc_ddl.sql Added Paths: ----------- trunk/rapc/images/northarrow.PNG trunk/rapc/include/xajax.inc.php trunk/rapc/include/xajaxCompress.php trunk/rapc/include/xajaxResponse.inc.php trunk/rapc/include/xajax_js/ trunk/rapc/include/xajax_js/xajax.js trunk/rapc/include/xajax_js/xajax_uncompressed.js Modified: trunk/rapc/changelog =================================================================== --- trunk/rapc/changelog 2006-10-16 08:00:16 UTC (rev 5) +++ trunk/rapc/changelog 2006-11-07 13:05:49 UTC (rev 6) @@ -1,3 +1,40 @@ +2006-11-6 Maher Abdel karim <mah...@do...> + + * address_confirmation.php:fix to deal with multiple results, and zoom to + extent. + + * print.php:deal with address confirmation result.Adjust print layout. + +2006-11-5 Maher Abdel karim <mah...@do...> + + * address_confirmation.php: + * map.php:deal with variable passing for AC. + * panelinstallation_report.php:adjust date display based on fatimah's + remarks. + * panelpage.php: + * include/public_panel.php:deal with mpwh remarks, and fix the image + loading. + +2006-10-31 Maher Abdel karim <mah...@do...> + + * map.php: add new action. + * script/create_rapc_ddl.sql: + * address_confirmation.php:add address confirmation functionality. + * admin/user_management.php:user management tools. + +2006-10-17 Maher Abdel karim <mah...@do...> + + * etc/rapc_flyer.sla:rapc flyer. + * dccssconfig.php.default + * dccssconfig.php:Add new variables for image loading handling. + * dataobject/public_panel.php:Add image loading functionality,regiteration + no,adjust calculations filling. + * dataobject/rapc.ini:add image, and registerno fields + * script/create_rapc_ddl.sql:add image, and regiterno fields to panel table. + * index.php:Add ministry logos. + * panelpage.php:introduce move_file(),implement xajax for regiterno field. + * include/xajax_js/*:files needed to implement xajax + 2006-10-12 Maher Abdel karim <mah...@do...> * include/i18n.php:add more translation. Modified: trunk/rapc/conf/dccssconfig.php =================================================================== --- trunk/rapc/conf/dccssconfig.php 2006-10-16 08:00:16 UTC (rev 5) +++ trunk/rapc/conf/dccssconfig.php 2006-11-07 13:05:49 UTC (rev 6) @@ -119,4 +119,7 @@ * set textdomain **/ $_SESSION['textdomain']='rapc'; + +//Directory to save loaded images +$_SESSION['imagedir']="c:/program files/mpwh/rapc/data/plugin/"; ?> Modified: trunk/rapc/conf/dccssconfig.php.default =================================================================== --- trunk/rapc/conf/dccssconfig.php.default 2006-10-16 08:00:16 UTC (rev 5) +++ trunk/rapc/conf/dccssconfig.php.default 2006-11-07 13:05:49 UTC (rev 6) @@ -118,4 +118,6 @@ * set textdomain **/ $_SESSION['textdomain']='rapc'; +//Directory to save loaded images +$_SESSION['imagedir']="c:/program files/rapc/data/plugin/"; ?> Modified: trunk/rapc/conf/rapc_en.map =================================================================== --- trunk/rapc/conf/rapc_en.map 2006-10-16 08:00:16 UTC (rev 5) +++ trunk/rapc/conf/rapc_en.map 2006-11-07 13:05:49 UTC (rev 6) @@ -85,7 +85,7 @@ QUERYMAP STYLE hilite - COLOR 255 0 0 + COLOR 255 255 0 outline 24 END #QUERYMAP @@ -111,11 +111,7 @@ CLASS NAME 'Adminsub.shp' TEMPLATE 'template.html' - #RASTERFILL_STYLE_SOLID - STYLE - COLOR 255 251 195 - BACKGROUNDCOLOR 255 255 255 - END #STYLE + #OUTLINE SYMBOL STYLE OUTLINECOLOR 0 0 0 @@ -124,6 +120,50 @@ END END #CLASS END #LAYER + + LAYER #plot.shp + #TRANSPARENCY 100 + NAME 'basemap' + METADATA + gix_layername "basemap.shp" + gix_layerfieldalias "plot_no" + END #METADATA + TOLERANCE 3 + labelitem "plot_no" + TOLERANCEUNITS pixels + DATA 'c:\temp\theme1.shp' + HEADER 'header.html' + FOOTER 'footer.html' + LABELCACHE on +# TILEINDEX '' +# TILEITEM '' + STATUS on + DEBUG false + TRANSFORM true + TYPE polygon + CLASS + NAME 'basemap' + template "ttt_query.html" + #RASTERFILL_STYLE_SOLID + + STYLE + OUTLINECOLOR 0 0 0 + SIZE 1 + COLOR 255 255 255 + BACKGROUNDCOLOR 255 255 0 + END #STYLE + + + label + color 0 0 0 + position cc + end + END #CLASS + + END #LAYER + + + LAYER #Borders.shp TRANSPARENCY 100 NAME 'Borders.shp' @@ -152,6 +192,7 @@ SIZE 1 COLOR 231 51 170 END #STYLE + END #CLASS END #LAYER Added: trunk/rapc/images/northarrow.PNG =================================================================== (Binary files differ) Property changes on: trunk/rapc/images/northarrow.PNG ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Modified: trunk/rapc/include/i18n.php =================================================================== --- trunk/rapc/include/i18n.php 2006-10-16 08:00:16 UTC (rev 5) +++ trunk/rapc/include/i18n.php 2006-11-07 13:05:49 UTC (rev 6) @@ -75,6 +75,7 @@ _("Mafraq"); _("Tafilah"); _("Zarqa"); +_("Companyname"); ?> Added: trunk/rapc/include/xajax.inc.php =================================================================== --- trunk/rapc/include/xajax.inc.php (rev 0) +++ trunk/rapc/include/xajax.inc.php 2006-11-07 13:05:49 UTC (rev 6) @@ -0,0 +1,1239 @@ +<?php +/** + * xajax.inc.php :: Main xajax class and setup file + * + * xajax version 0.2.4 + * copyright (c) 2005 by Jared White & J. Max Wilson + * http://www.xajaxproject.org + * + * xajax is an open source PHP class library for easily creating powerful + * PHP-driven, web-based Ajax Applications. Using xajax, you can asynchronously + * call PHP functions and update the content of your your webpage without + * reloading the page. + * + * xajax is released under the terms of the LGPL license + * http://www.gnu.org/copyleft/lesser.html#SEC3 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + * @package xajax + * @version $Id$ + * @copyright Copyright (c) 2005-2006 by Jared White & J. Max Wilson + * @license http://www.gnu.org/copyleft/lesser.html#SEC3 LGPL License + */ + +/* + ---------------------------------------------------------------------------- + | Online documentation for this class is available on the xajax wiki at: | + | http://wiki.xajaxproject.org/Documentation:xajax.inc.php | + ---------------------------------------------------------------------------- +*/ + +/** + * Define XAJAX_DEFAULT_CHAR_ENCODING that is used by both + * the xajax and xajaxResponse classes + */ +if (!defined ('XAJAX_DEFAULT_CHAR_ENCODING')) +{ + define ('XAJAX_DEFAULT_CHAR_ENCODING', 'utf-8' ); +} + +require_once(dirname(__FILE__)."/xajaxResponse.inc.php"); + +/** + * Communication Method Defines + */ +if (!defined ('XAJAX_GET')) +{ + define ('XAJAX_GET', 0); +} +if (!defined ('XAJAX_POST')) +{ + define ('XAJAX_POST', 1); +} + +/** + * The xajax class generates the xajax javascript for your page including the + * Javascript wrappers for the PHP functions that you want to call from your page. + * It also handles processing and executing the command messages in the XML responses + * sent back to your page from your PHP functions. + * + * @package xajax + */ +class xajax +{ + /**#@+ + * @access protected + */ + /** + * @var array Array of PHP functions that will be callable through javascript wrappers + */ + var $aFunctions; + /** + * @var array Array of object callbacks that will allow Javascript to call PHP methods (key=function name) + */ + var $aObjects; + /** + * @var array Array of RequestTypes to be used with each function (key=function name) + */ + var $aFunctionRequestTypes; + /** + * @var array Array of Include Files for any external functions (key=function name) + */ + var $aFunctionIncludeFiles; + /** + * @var string Name of the PHP function to call if no callable function was found + */ + var $sCatchAllFunction; + /** + * @var string Name of the PHP function to call before any other function + */ + var $sPreFunction; + /** + * @var string The URI for making requests to the xajax object + */ + var $sRequestURI; + /** + * @var string The prefix to prepend to the javascript wraper function name + */ + var $sWrapperPrefix; + /** + * @var boolean Show debug messages (default false) + */ + var $bDebug; + /** + * @var boolean Show messages in the client browser's status bar (default false) + */ + var $bStatusMessages; + /** + * @var boolean Allow xajax to exit after processing a request (default true) + */ + var $bExitAllowed; + /** + * @var boolean Use wait cursor in browser (default true) + */ + var $bWaitCursor; + /** + * @var boolean Use an special xajax error handler so the errors are sent to the browser properly (default false) + */ + var $bErrorHandler; + /** + * @var string Specify what, if any, file xajax should log errors to (and more information in a future release) + */ + var $sLogFile; + /** + * @var boolean Clean all output buffers before outputting response (default false) + */ + var $bCleanBuffer; + /** + * @var string String containing the character encoding used + */ + var $sEncoding; + /** + * @var boolean Decode input request args from UTF-8 (default false) + */ + var $bDecodeUTF8Input; + /** + * @var boolean Convert special characters to HTML entities (default false) + */ + var $bOutputEntities; + /** + * @var array Array for parsing complex objects + */ + var $aObjArray; + /** + * @var integer Position in $aObjArray + */ + var $iPos; + + /**#@-*/ + + /** + * Constructor. You can set some extra xajax options right away or use + * individual methods later to set options. + * + * @param string defaults to the current browser URI + * @param string defaults to "xajax_"; + * @param string defaults to XAJAX_DEFAULT_CHAR_ENCODING defined above + * @param boolean defaults to false + */ + function xajax($sRequestURI="",$sWrapperPrefix="xajax_",$sEncoding=XAJAX_DEFAULT_CHAR_ENCODING,$bDebug=false) + { + $this->aFunctions = array(); + $this->aObjects = array(); + $this->aFunctionIncludeFiles = array(); + $this->sRequestURI = $sRequestURI; + if ($this->sRequestURI == "") + $this->sRequestURI = $this->_detectURI(); + $this->sWrapperPrefix = $sWrapperPrefix; + $this->bDebug = $bDebug; + $this->bStatusMessages = false; + $this->bWaitCursor = true; + $this->bExitAllowed = true; + $this->bErrorHandler = false; + $this->sLogFile = ""; + $this->bCleanBuffer = false; + $this->setCharEncoding($sEncoding); + $this->bDecodeUTF8Input = false; + $this->bOutputEntities = false; + } + + /** + * Sets the URI to which requests will be made. + * <i>Usage:</i> <kbd>$xajax->setRequestURI("http://www.xajaxproject.org");</kbd> + * + * @param string the URI (can be absolute or relative) of the PHP script + * that will be accessed when an xajax request occurs + */ + function setRequestURI($sRequestURI) + { + $this->sRequestURI = $sRequestURI; + } + + /** + * Sets the prefix that will be appended to the Javascript wrapper + * functions (default is "xajax_"). + * + * @param string + */ + // + function setWrapperPrefix($sPrefix) + { + $this->sWrapperPrefix = $sPrefix; + } + + /** + * Enables debug messages for xajax. + * */ + function debugOn() + { + $this->bDebug = true; + } + + /** + * Disables debug messages for xajax (default behavior). + */ + function debugOff() + { + $this->bDebug = false; + } + + /** + * Enables messages in the browser's status bar for xajax. + */ + function statusMessagesOn() + { + $this->bStatusMessages = true; + } + + /** + * Disables messages in the browser's status bar for xajax (default behavior). + */ + function statusMessagesOff() + { + $this->bStatusMessages = false; + } + + /** + * Enables the wait cursor to be displayed in the browser (default behavior). + */ + function waitCursorOn() + { + $this->bWaitCursor = true; + } + + /** + * Disables the wait cursor to be displayed in the browser. + */ + function waitCursorOff() + { + $this->bWaitCursor = false; + } + + /** + * Enables xajax to exit immediately after processing a request and + * sending the response back to the browser (default behavior). + */ + function exitAllowedOn() + { + $this->bExitAllowed = true; + } + + /** + * Disables xajax's default behavior of exiting immediately after + * processing a request and sending the response back to the browser. + */ + function exitAllowedOff() + { + $this->bExitAllowed = false; + } + + /** + * Turns on xajax's error handling system so that PHP errors that occur + * during a request are trapped and pushed to the browser in the form of + * a Javascript alert. + */ + function errorHandlerOn() + { + $this->bErrorHandler = true; + } + + /** + * Turns off xajax's error handling system (default behavior). + */ + function errorHandlerOff() + { + $this->bErrorHandler = false; + } + + /** + * Specifies a log file that will be written to by xajax during a request + * (used only by the error handling system at present). If you don't invoke + * this method, or you pass in "", then no log file will be written to. + * <i>Usage:</i> <kbd>$xajax->setLogFile("/xajax_logs/errors.log");</kbd> + */ + function setLogFile($sFilename) + { + $this->sLogFile = $sFilename; + } + + /** + * Causes xajax to clean out all output buffers before outputting a + * response (default behavior). + */ + function cleanBufferOn() + { + $this->bCleanBuffer = true; + } + /** + * Turns off xajax's output buffer cleaning. + */ + function cleanBufferOff() + { + $this->bCleanBuffer = false; + } + + /** + * Sets the character encoding for the HTTP output based on + * <kbd>$sEncoding</kbd>, which is a string containing the character + * encoding to use. You don't need to use this method normally, since the + * character encoding for the response gets set automatically based on the + * <kbd>XAJAX_DEFAULT_CHAR_ENCODING</kbd> constant. + * <i>Usage:</i> <kbd>$xajax->setCharEncoding("utf-8");</kbd> + * + * @param string the encoding type to use (utf-8, iso-8859-1, etc.) + */ + function setCharEncoding($sEncoding) + { + $this->sEncoding = $sEncoding; + } + + /** + * Causes xajax to decode the input request args from UTF-8 to the current + * encoding if possible. Either the iconv or mb_string extension must be + * present for optimal functionality. + */ + function decodeUTF8InputOn() + { + $this->bDecodeUTF8Input = true; + } + + /** + * Turns off decoding the input request args from UTF-8 (default behavior). + */ + function decodeUTF8InputOff() + { + $this->bDecodeUTF8Input = false; + } + + /** + * Tells the response object to convert special characters to HTML entities + * automatically (only works if the mb_string extension is available). + */ + function outputEntitiesOn() + { + $this->bOutputEntities = true; + } + + /** + * Tells the response object to output special characters intact. (default + * behavior). + */ + function outputEntitiesOff() + { + $this->bOutputEntities = false; + } + + /** + * Registers a PHP function or method to be callable through xajax in your + * Javascript. If you want to register a function, pass in the name of that + * function. If you want to register a static class method, pass in an + * array like so: + * <kbd>array("myFunctionName", "myClass", "myMethod")</kbd> + * For an object instance method, use an object variable for the second + * array element (and in PHP 4 make sure you put an & before the variable + * to pass the object by reference). Note: the function name is what you + * call via Javascript, so it can be anything as long as it doesn't + * conflict with any other registered function name. + * + * <i>Usage:</i> <kbd>$xajax->registerFunction("myFunction");</kbd> + * or: <kbd>$xajax->registerFunction(array("myFunctionName", &$myObject, "myMethod"));</kbd> + * + * @param mixed contains the function name or an object callback array + * @param mixed request type (XAJAX_GET/XAJAX_POST) that should be used + * for this function. Defaults to XAJAX_POST. + */ + function registerFunction($mFunction,$sRequestType=XAJAX_POST) + { + if (is_array($mFunction)) { + $this->aFunctions[$mFunction[0]] = 1; + $this->aFunctionRequestTypes[$mFunction[0]] = $sRequestType; + $this->aObjects[$mFunction[0]] = array_slice($mFunction, 1); + } + else { + $this->aFunctions[$mFunction] = 1; + $this->aFunctionRequestTypes[$mFunction] = $sRequestType; + } + } + + /** + * Registers a PHP function to be callable through xajax which is located + * in some other file. If the function is requested the external file will + * be included to define the function before the function is called. + * + * <i>Usage:</i> <kbd>$xajax->registerExternalFunction("myFunction","myFunction.inc.php",XAJAX_POST);</kbd> + * + * @param string contains the function name or an object callback array + * ({@link xajax::registerFunction() see registerFunction} for + * more info on object callback arrays) + * @param string contains the path and filename of the include file + * @param mixed the RequestType (XAJAX_GET/XAJAX_POST) that should be used + * for this function. Defaults to XAJAX_POST. + */ + function registerExternalFunction($mFunction,$sIncludeFile,$sRequestType=XAJAX_POST) + { + $this->registerFunction($mFunction, $sRequestType); + + if (is_array($mFunction)) { + $this->aFunctionIncludeFiles[$mFunction[0]] = $sIncludeFile; + } + else { + $this->aFunctionIncludeFiles[$mFunction] = $sIncludeFile; + } + } + + /** + * Registers a PHP function to be called when xajax cannot find the + * function being called via Javascript. Because this is technically + * impossible when using "wrapped" functions, the catch-all feature is + * only useful when you're directly using the xajax.call() Javascript + * method. Use the catch-all feature when you want more dynamic ability to + * intercept unknown calls and handle them in a custom way. + * + * <i>Usage:</i> <kbd>$xajax->registerCatchAllFunction("myCatchAllFunction");</kbd> + * + * @param string contains the function name or an object callback array + * ({@link xajax::registerFunction() see registerFunction} for + * more info on object callback arrays) + */ + function registerCatchAllFunction($mFunction) + { + if (is_array($mFunction)) { + $this->sCatchAllFunction = $mFunction[0]; + $this->aObjects[$mFunction[0]] = array_slice($mFunction, 1); + } + else { + $this->sCatchAllFunction = $mFunction; + } + } + + /** + * Registers a PHP function to be called before xajax calls the requested + * function. xajax will automatically add the request function's response + * to the pre-function's response to create a single response. Another + * feature is the ability to return not just a response, but an array with + * the first element being false (a boolean) and the second being the + * response. In this case, the pre-function's response will be returned to + * the browser without xajax calling the requested function. + * + * <i>Usage:</i> <kbd>$xajax->registerPreFunction("myPreFunction");</kbd> + * + * @param string contains the function name or an object callback array + * ({@link xajax::registerFunction() see registerFunction} for + * more info on object callback arrays) + */ + function registerPreFunction($mFunction) + { + if (is_array($mFunction)) { + $this->sPreFunction = $mFunction[0]; + $this->aObjects[$mFunction[0]] = array_slice($mFunction, 1); + } + else { + $this->sPreFunction = $mFunction; + } + } + + /** + * Returns true if xajax can process the request, false if otherwise. + * You can use this to determine if xajax needs to process the request or + * not. + * + * @return boolean + */ + function canProcessRequests() + { + if ($this->getRequestMode() != -1) return true; + return false; + } + + /** + * Returns the current request mode (XAJAX_GET or XAJAX_POST), or -1 if + * there is none. + * + * @return mixed + */ + function getRequestMode() + { + if (!empty($_GET["xajax"])) + return XAJAX_GET; + + if (!empty($_POST["xajax"])) + return XAJAX_POST; + + return -1; + } + + /** + * This is the main communications engine of xajax. The engine handles all + * incoming xajax requests, calls the apporiate PHP functions (or + * class/object methods) and passes the XML responses back to the + * Javascript response handler. If your RequestURI is the same as your Web + * page then this function should be called before any headers or HTML has + * been sent. + */ + function processRequests() + { + + $requestMode = -1; + $sFunctionName = ""; + $bFoundFunction = true; + $bFunctionIsCatchAll = false; + $sFunctionNameForSpecial = ""; + $aArgs = array(); + $sPreResponse = ""; + $bEndRequest = false; + $sResponse = ""; + + $requestMode = $this->getRequestMode(); + if ($requestMode == -1) return; + + if ($requestMode == XAJAX_POST) + { + $sFunctionName = $_POST["xajax"]; + + if (!empty($_POST["xajaxargs"])) + $aArgs = $_POST["xajaxargs"]; + } + else + { + header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); + header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); + header ("Cache-Control: no-cache, must-revalidate"); + header ("Pragma: no-cache"); + + $sFunctionName = $_GET["xajax"]; + + if (!empty($_GET["xajaxargs"])) + $aArgs = $_GET["xajaxargs"]; + } + + // Use xajax error handler if necessary + if ($this->bErrorHandler) { + $GLOBALS['xajaxErrorHandlerText'] = ""; + set_error_handler("xajaxErrorHandler"); + } + + if ($this->sPreFunction) { + if (!$this->_isFunctionCallable($this->sPreFunction)) { + $bFoundFunction = false; + $objResponse = new xajaxResponse(); + $objResponse->addAlert("Unknown Pre-Function ". $this->sPreFunction); + $sResponse = $objResponse->getXML(); + } + } + //include any external dependencies associated with this function name + if (array_key_exists($sFunctionName,$this->aFunctionIncludeFiles)) + { + ob_start(); + include_once($this->aFunctionIncludeFiles[$sFunctionName]); + ob_end_clean(); + } + + if ($bFoundFunction) { + $sFunctionNameForSpecial = $sFunctionName; + if (!array_key_exists($sFunctionName, $this->aFunctions)) + { + if ($this->sCatchAllFunction) { + $sFunctionName = $this->sCatchAllFunction; + $bFunctionIsCatchAll = true; + } + else { + $bFoundFunction = false; + $objResponse = new xajaxResponse(); + $objResponse->addAlert("Unknown Function $sFunctionName."); + $sResponse = $objResponse->getXML(); + } + } + else if ($this->aFunctionRequestTypes[$sFunctionName] != $requestMode) + { + $bFoundFunction = false; + $objResponse = new xajaxResponse(); + $objResponse->addAlert("Incorrect Request Type."); + $sResponse = $objResponse->getXML(); + } + } + + if ($bFoundFunction) + { + for ($i = 0; $i < sizeof($aArgs); $i++) + { + // If magic quotes is on, then we need to strip the slashes from the args + if (get_magic_quotes_gpc() == 1 && is_string($aArgs[$i])) { + + $aArgs[$i] = stripslashes($aArgs[$i]); + } + if (stristr($aArgs[$i],"<xjxobj>") != false) + { + $aArgs[$i] = $this->_xmlToArray("xjxobj",$aArgs[$i]); + } + else if (stristr($aArgs[$i],"<xjxquery>") != false) + { + $aArgs[$i] = $this->_xmlToArray("xjxquery",$aArgs[$i]); + } + else if ($this->bDecodeUTF8Input) + { + $aArgs[$i] = $this->_decodeUTF8Data($aArgs[$i]); + } + } + + if ($this->sPreFunction) { + $mPreResponse = $this->_callFunction($this->sPreFunction, array($sFunctionNameForSpecial, $aArgs)); + if (is_array($mPreResponse) && $mPreResponse[0] === false) { + $bEndRequest = true; + $sPreResponse = $mPreResponse[1]; + } + else { + $sPreResponse = $mPreResponse; + } + if (is_a($sPreResponse, "xajaxResponse")) { + $sPreResponse = $sPreResponse->getXML(); + } + if ($bEndRequest) $sResponse = $sPreResponse; + } + + if (!$bEndRequest) { + if (!$this->_isFunctionCallable($sFunctionName)) { + $objResponse = new xajaxResponse(); + $objResponse->addAlert("The Registered Function $sFunctionName Could Not Be Found."); + $sResponse = $objResponse->getXML(); + } + else { + if ($bFunctionIsCatchAll) { + $aArgs = array($sFunctionNameForSpecial, $aArgs); + } + $sResponse = $this->_callFunction($sFunctionName, $aArgs); + } + if (is_a($sResponse, "xajaxResponse")) { + $sResponse = $sResponse->getXML(); + } + if (!is_string($sResponse) || strpos($sResponse, "<xjx>") === FALSE) { + $objResponse = new xajaxResponse(); + $objResponse->addAlert("No XML Response Was Returned By Function $sFunctionName."); + $sResponse = $objResponse->getXML(); + } + else if ($sPreResponse != "") { + $sNewResponse = new xajaxResponse($this->sEncoding, $this->bOutputEntities); + $sNewResponse->loadXML($sPreResponse); + $sNewResponse->loadXML($sResponse); + $sResponse = $sNewResponse->getXML(); + } + } + } + + $sContentHeader = "Content-type: text/xml;"; + if ($this->sEncoding && strlen(trim($this->sEncoding)) > 0) + $sContentHeader .= " charset=".$this->sEncoding; + header($sContentHeader); + if ($this->bErrorHandler && !empty( $GLOBALS['xajaxErrorHandlerText'] )) { + $sErrorResponse = new xajaxResponse(); + $sErrorResponse->addAlert("** PHP Error Messages: **" . $GLOBALS['xajaxErrorHandlerText']); + if ($this->sLogFile) { + $fH = @fopen($this->sLogFile, "a"); + if (!$fH) { + $sErrorResponse->addAlert("** Logging Error **\n\nxajax was unable to write to the error log file:\n" . $this->sLogFile); + } + else { + fwrite($fH, "** xajax Error Log - " . strftime("%b %e %Y %I:%M:%S %p") . " **" . $GLOBALS['xajaxErrorHandlerText'] . "\n\n\n"); + fclose($fH); + } + } + + $sErrorResponse->loadXML($sResponse); + $sResponse = $sErrorResponse->getXML(); + + } + if ($this->bCleanBuffer) while (@ob_end_clean()); + print $sResponse; + if ($this->bErrorHandler) restore_error_handler(); + + if ($this->bExitAllowed) + exit(); + } + + /** + * Prints the xajax Javascript header and wrapper code into your page by + * printing the output of the getJavascript() method. It should only be + * called between the <pre><head> </head></pre> tags in your HTML page. + * Remember, if you only want to obtain the result of this function, use + * {@link xajax::getJavascript()} instead. + * + * <i>Usage:</i> + * <code> + * <head> + * ... + * < ?php $xajax->printJavascript(); ? > + * </code> + * + * @param string the relative address of the folder where xajax has been + * installed. For instance, if your PHP file is + * "http://www.myserver.com/myfolder/mypage.php" + * and xajax was installed in + * "http://www.myserver.com/anotherfolder", then $sJsURI + * should be set to "../anotherfolder". Defaults to assuming + * xajax is in the same folder as your PHP file. + * @param string the relative folder/file pair of the xajax Javascript + * engine located within the xajax installation folder. + * Defaults to xajax_js/xajax.js. + */ + function printJavascript($sJsURI="", $sJsFile=NULL) + { + print $this->getJavascript($sJsURI, $sJsFile); + } + + /** + * Returns the xajax Javascript code that should be added to your HTML page + * between the <kbd><head> </head></kbd> tags. + * + * <i>Usage:</i> + * <code> + * < ?php $xajaxJSHead = $xajax->getJavascript(); ? > + * <head> + * ... + * < ?php echo $xajaxJSHead; ? > + * </code> + * + * @param string the relative address of the folder where xajax has been + * installed. For instance, if your PHP file is + * "http://www.myserver.com/myfolder/mypage.php" + * and xajax was installed in + * "http://www.myserver.com/anotherfolder", then $sJsURI + * should be set to "../anotherfolder". Defaults to assuming + * xajax is in the same folder as your PHP file. + * @param string the relative folder/file pair of the xajax Javascript + * engine located within the xajax installation folder. + * Defaults to xajax_js/xajax.js. + * @return string + */ + function getJavascript($sJsURI="", $sJsFile=NULL) + { + $html = $this->getJavascriptConfig(); + $html .= $this->getJavascriptInclude($sJsURI, $sJsFile); + + return $html; + } + + /** + * Returns a string containing inline Javascript that sets up the xajax + * runtime (typically called internally by xajax from get/printJavascript). + * + * @return string + */ + function getJavascriptConfig() + { + $html = "\t<script type=\"text/javascript\">\n"; + $html .= "var xajaxRequestUri=\"".$this->sRequestURI."\";\n"; + $html .= "var xajaxDebug=".($this->bDebug?"true":"false").";\n"; + $html .= "var xajaxStatusMessages=".($this->bStatusMessages?"true":"false").";\n"; + $html .= "var xajaxWaitCursor=".($this->bWaitCursor?"true":"false").";\n"; + $html .= "var xajaxDefinedGet=".XAJAX_GET.";\n"; + $html .= "var xajaxDefinedPost=".XAJAX_POST.";\n"; + $html .= "var xajaxLoaded=false;\n"; + + foreach($this->aFunctions as $sFunction => $bExists) { + $html .= $this->_wrap($sFunction,$this->aFunctionRequestTypes[$sFunction]); + } + + $html .= "\t</script>\n"; + return $html; + } + + /** + * Returns a string containing a Javascript include of the xajax.js file + * along with a check to see if the file loaded after six seconds + * (typically called internally by xajax from get/printJavascript). + * + * @param string the relative address of the folder where xajax has been + * installed. For instance, if your PHP file is + * "http://www.myserver.com/myfolder/mypage.php" + * and xajax was installed in + * "http://www.myserver.com/anotherfolder", then $sJsURI + * should be set to "../anotherfolder". Defaults to assuming + * xajax is in the same folder as your PHP file. + * @param string the relative folder/file pair of the xajax Javascript + * engine located within the xajax installation folder. + * Defaults to xajax_js/xajax.js. + * @return string + */ + function getJavascriptInclude($sJsURI="", $sJsFile=NULL) + { + if ($sJsFile == NULL) $sJsFile = "xajax_js/xajax.js"; + + if ($sJsURI != "" && substr($sJsURI, -1) != "/") $sJsURI .= "/"; + + $html = "\t<script type=\"text/javascript\" src=\"" . $sJsURI . $sJsFile . "\"></script>\n"; + $html .= "\t<script type=\"text/javascript\">\n"; + $html .= "window.setTimeout(function () { if (!xajaxLoaded) { alert('Error: the xajax Javascript file could not be included. Perhaps the URL is incorrect?\\nURL: {$sJsURI}{$sJsFile}'); } }, 6000);\n"; + $html .= "\t</script>\n"; + return $html; + } + + /** + * This method can be used to create a new xajax.js file out of the + * xajax_uncompressed.js file (which will only happen if xajax.js doesn't + * already exist on the filesystem). + * + * @param string an optional argument containing the full server file path + * of xajax.js. + */ + function autoCompressJavascript($sJsFullFilename=NULL) + { + $sJsFile = "xajax_js/xajax.js"; + + if ($sJsFullFilename) { + $realJsFile = $sJsFullFilename; + } + else { + $realPath = realpath(dirname(__FILE__)); + $realJsFile = $realPath . "/". $sJsFile; + } + + // Create a compressed file if necessary + if (!file_exists($realJsFile)) { + $srcFile = str_replace(".js", "_uncompressed.js", $realJsFile); + if (!file_exists($srcFile)) { + trigger_error("The xajax uncompressed Javascript file could not be found in the <b>" . dirname($realJsFile) . "</b> folder. Error ", E_USER_ERROR); + } + require(dirname(__FILE__)."/xajaxCompress.php"); + $javaScript = implode('', file($srcFile)); + $compressedScript = xajaxCompressJavascript($javaScript); + $fH = @fopen($realJsFile, "w"); + if (!$fH) { + trigger_error("The xajax compressed javascript file could not be written in the <b>" . dirname($realJsFile) . "</b> folder. Error ", E_USER_ERROR); + } + else { + fwrite($fH, $compressedScript); + fclose($fH); + } + } + } + + /** + * Returns the current URL based upon the SERVER vars. + * + * @access private + * @return string + */ + function _detectURI() { + $aURL = array(); + + // Try to get the request URL + if (!empty($_SERVER['REQUEST_URI'])) { + $aURL = parse_url($_SERVER['REQUEST_URI']); + } + + // Fill in the empty values + if (empty($aURL['scheme'])) { + if (!empty($_SERVER['HTTP_SCHEME'])) { + $aURL['scheme'] = $_SERVER['HTTP_SCHEME']; + } else { + $aURL['scheme'] = (!empty($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) != 'off') ? 'https' : 'http'; + } + } + + if (empty($aURL['host'])) { + if (!empty($_SERVER['HTTP_HOST'])) { + if (strpos($_SERVER['HTTP_HOST'], ':') > 0) { + list($aURL['host'], $aURL['port']) = explode(':', $_SERVER['HTTP_HOST']); + } else { + $aURL['host'] = $_SERVER['HTTP_HOST']; + } + } else if (!empty($_SERVER['SERVER_NAME'])) { + $aURL['host'] = $_SERVER['SERVER_NAME']; + } else { + print "xajax Error: xajax failed to automatically identify your Request URI."; + print "Please set the Request URI explicitly when you instantiate the xajax object."; + exit(); + } + } + + if (empty($aURL['port']) && !empty($_SERVER['SERVER_PORT'])) { + $aURL['port'] = $_SERVER['SERVER_PORT']; + } + + if (empty($aURL['path'])) { + if (!empty($_SERVER['PATH_INFO'])) { + $sPath = parse_url($_SERVER['PATH_INFO']); + } else { + $sPath = parse_url($_SERVER['PHP_SELF']); + } + $aURL['path'] = $sPath['path']; + unset($sPath); + } + + if (!empty($aURL['query'])) { + $aURL['query'] = '?'.$aURL['query']; + } + + // Build the URL: Start with scheme, user and pass + $sURL = $aURL['scheme'].'://'; + if (!empty($aURL['user'])) { + $sURL.= $aURL['user']; + if (!empty($aURL['pass'])) { + $sURL.= ':'.$aURL['pass']; + } + $sURL.= '@'; + } + + // Add the host + $sURL.= $aURL['host']; + + // Add the port if needed + if (!empty($aURL['port']) && (($aURL['scheme'] == 'http' && $aURL['port'] != 80) || ($aURL['scheme'] == 'https' && $aURL['port'] != 443))) { + $sURL.= ':'.$aURL['port']; + } + + // Add the path and the query string + $sURL.= $aURL['path'].@$aURL['query']; + + // Clean up + unset($aURL); + return $sURL; + } + + /** + * Returns true if the function name is associated with an object callback, + * false if not. + * + * @param string the name of the function + * @access private + * @return boolean + */ + function _isObjectCallback($sFunction) + { + if (array_key_exists($sFunction, $this->aObjects)) return true; + return false; + } + + /** + * Returns true if the function or object callback can be called, false if + * not. + * + * @param string the name of the function + * @access private + * @return boolean + */ + function _isFunctionCallable($sFunction) + { + if ($this->_isObjectCallback($sFunction)) { + if (is_object($this->aObjects[$sFunction][0])) { + return method_exists($this->aObjects[$sFunction][0], $this->aObjects[$sFunction][1]); + } + else { + return is_callable($this->aObjects[$sFunction]); + } + } + else { + return function_exists($sFunction); + } + } + + /** + * Calls the function, class method, or object method with the supplied + * arguments. + * + * @param string the name of the function + * @param array arguments to pass to the function + * @access private + * @return mixed the output of the called function or method + */ + function _callFunction($sFunction, $aArgs) + { + if ($this->_isObjectCallback($sFunction)) { + $mReturn = call_user_func_array($this->aObjects[$sFunction], $aArgs); + } + else { + $mReturn = call_user_func_array($sFunction, $aArgs); + } + return $mReturn; + } + + /** + * Generates the Javascript wrapper for the specified PHP function. + * + * @param string the name of the function + * @param mixed the request type + * @access private + * @return string + */ + function _wrap($sFunction,$sRequestType=XAJAX_POST) + { + $js = "function ".$this->sWrapperPrefix."$sFunction(){return xajax.call(\"$sFunction\", arguments, ".$sRequestType.");}\n"; + return $js; + } + + /** + * Takes a string containing xajax xjxobj XML or xjxquery XML and builds an + * array representation of it to pass as an argument to the PHP function + * being called. + * + * @param string the root tag of the XML + * @param string XML to convert + * @access private + * @return array + */ + function _xmlToArray($rootTag, $sXml) + { + $aArray = array(); + $sXml = str_replace("<$rootTag>","<$rootTag>|~|",$sXml); + $sXml = str_replace("</$rootTag>","</$rootTag>|~|",$sXml); + $sXml = str_replace("<e>","<e>|~|",$sXml); + $sXml = str_replace("</e>","</e>|~|",$sXml); + $sXml = str_replace("<k>","<k>|~|",$sXml); + $sXml = str_replace("</k>","|~|</k>|~|",$sXml); + $sXml = str_replace("<v>","<v>|~|",$sXml); + $sXml = str_replace("</v>","|~|</v>|~|",$sXml); + $sXml = str_replace("<q>","<q>|~|",$sXml); + $sXml = str_replace("</q>","|~|</q>|~|",$sXml); + + $this->aObjArray = explode("|~|",$sXml); + + $this->iPos = 0; + $aArray = $this->_parseObjXml($rootTag); + + return $aArray; + } + + /** + * A recursive function that generates an array from the contents of + * $this->aObjArray. + * + * @param string the root tag of the XML + * @access private + * @return array + */ + function _parseObjXml($rootTag) + { + $aArray = array(); + + if ($rootTag == "xjxobj") + { + while(!stristr($this->aObjArray[$this->iPos],"</xjxobj>")) + { + $this->iPos++; + if(stristr($this->aObjArray[$this->iPos],"<e>")) + { + $key = ""; + $value = null; + + $this->iPos++; + while(!stristr($this->aObjArray[$this->iPos],"</e>")) + { + if(stristr($this->aObjArray[$this->iPos],"<k>")) + { + $this->iPos++; + while(!stristr($this->aObjArray[$this->iPos],"</k>")) + { + $key .= $this->aObjArray[$this->iPos]; + $this->iPos++; + } + } + if(stristr($this->aObjArray[$this->iPos],"<v>")) + { + $this->iPos++; + while(!stristr($this->aObjArray[$this->iPos],"</v>")) + { + if(stristr($this->aObjArray[$this->iPos],"<xjxobj>")) + { + $value = $this->_parseObjXml("xjxobj"); + $this->iPos++; + } + else + { + $value .= $this->aObjArray[$this->iPos]; + if ($this->bDecodeUTF8Input) + { + $value = $this->_decodeUTF8Data($value); + } + } + $this->iPos++; + } + } + $this->iPos++; + } + + $aArray[$key]=$value; + } + } + } + + if ($rootTag == "xjxquery") + { + $sQuery = ""; + $this->iPos++; + while(!stristr($this->aObjArray[$this->iPos],"</xjxquery>")) + { + if (stristr($this->aObjArray[$this->iPos],"<q>") || stristr($this->aObjArray[$this->iPos],"</q>")) + { + $this->iPos++; + continue; + } + $sQuery .= $this->aObjArray[$this->iPos]; + $this->iPos++; + } + + parse_str($sQuery, $aArray); + if ($this->bDecodeUTF8Input) + { + foreach($aArray as $key => $value) + { + $aArray[$key] = $this->_decodeUTF8Data($value); + } + } + // If magic quotes is on, then we need to strip the slashes from the + // array values because of the parse_str pass which adds slashes + if (get_magic_quotes_gpc() == 1) { + $newArray = array(); + foreach ($aArray as $sKey => $sValue) { + if (is_string($sValue)) + $newArray[$sKey] = stripslashes($sValue); + else + $newArray[$sKey] = $sValue; + } + $aArray = $newArray; + } + } + + return $aArray; + } + + /** + * Decodes string data from UTF-8 to the current xajax encoding. + * + * @param string data to convert + * @access private + * @return string converted data + */ + function _decodeUTF8Data($sData) + { + $sValue = $sData; + if ($this->bDecodeUTF8Input) + { + $sFuncToUse = NULL; + + if (function_exists('iconv')) + { + $sFuncToUse = "iconv"; + } + else if (function_exists('mb_convert_encoding')) + { + $sFuncToUse = "mb_convert_encoding"; + } + else if ($this->sEncoding == "ISO-8859-1") + { + $sFuncToUse = "utf8_decode"; + } + else + { + trigger_error("The incoming xajax data could not be converted from UTF-8", E_USER_NOTICE); + } + + if ($sFuncToUse) + { + if (is_string($sValue)) + { + if ($sFuncToUse == "iconv") + { + $sValue = iconv("UTF-8", $this->sEncoding.'//TRANSLIT', $sValue); + } + else if ($sFuncToUse == "mb_convert_encoding") + { + $sValue = mb_convert_encoding($sValue, $this->sEncoding, "UTF-8"); + } + else + { + $sValue = utf8_decode($sValue); + } + } + } + } + return $sValue; + } + +}// end class xajax + +/** + * This function is registered with PHP's set_error_handler() function if + * the xajax error handling system is turned on. + */ +function xajaxErrorHandler($errno, $errstr, $errfile, $errline) +{ + $errorReporting = error_reporting(); + if (($errno & $errorReporting) == 0) return; + + if ($errno == E_NOTICE) { + $errTypeStr = "NOTICE"; + } + else if ($errno == E_WARNING) { + $errTypeStr = "WARNING"; + } + else if ($errno == E_USER_NOTICE) { + $errTypeStr = "USER NOTICE"; + } + else if ($errno == E_USER_WARNING) { + $errTypeStr = "USER WARNING"; + } + else if ($errno == E_USER_ERROR) { + $errTypeStr = "USER FATAL ERROR"; + } + else if ($errno == E_STRICT) { + return; + } + else { + $errTypeStr = "UNKNOWN: $errno"; + } + $GLOBALS['xajaxErrorHandlerText'] .= "\n----\n[$errTypeStr] $errstr\nerror in line $errline of file $errfile"; +} + +?> \ No newline at end of file Added: trunk/rapc/include/xajaxCompress.php =================================================================== --- trunk/rapc/include/xajaxCompress.php (rev 0) +++ trunk/rapc/include/xajaxCompress.php 2006-11-07 13:05:49 UTC (rev 6) @@ -0,0 +1,182 @@ +<?php +/** + * xajaxCompress.php :: function to compress Javascript + * + * xajax version 0.2.4 + * copyright (c) 2005 by Jared White & J. Max Wilson + * http://www.xajaxproject.org + * + * xajax is an open source PHP class library for easily creating powerful + * PHP-driven, web-based Ajax Applications. Using xajax, you can asynchronously + * call PHP functions and update the content of your your webpage without + * reloading the page. + * + * xajax is released under the terms of the LGPL license + * http://www.gnu.org/copyleft/lesser.html#SEC3 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + * @package xajax + * @version $Id$ + * @copyright Copyright (c) 2005-2006 by Jared White & J. Max Wilson + * @license http://www.gnu.org/copyleft/lesser.html#SEC3 LGPL License + */ + +/** + * Compresses the Javascript code for more efficient delivery. + * (used internally) + * + * @param string contains the Javascript code to compress + */ +function xajaxCompressJavascript($sJS) +{ + //remove windows cariage returns + $sJS = str_replace("\r","",$sJS); + + //array to store replaced literal strings + $literal_strings = array(); + + //explode the string into lines + $lines = explode("\n",$sJS); + //loop through all the lines, building a new string at the same time as removing literal strings + $clean = ""; + $inComment = false; + $literal = ""; + $inQuote = false; + $escaped = false; + $quoteChar = ""; + + for($i=0;$i<count($lines);$i++) + { + $line = $lines[$i]; + $inNormalComment = false; + + //loop through line's characters and take out any literal strings, replace them with ___i___ where i is the index of this string + for($j=0;$j<strlen($line);$j++) + { + $c = substr($line,$j,1); + $d = substr($line,$j,2); + + //look for start of quote + if(!$inQuote && !$inComment) + { + //is this character a quote or a comment + if(($c=="\"" || $c=="'") && !$inComment && !$inNormalComment) + { + $inQuote = true; + $inComment = false; + $escaped = false; + $quoteChar = $c; + $literal = $c; + } + else if($d=="/*" && !$inNormalComment) + { + $inQuote = false; + $inComment = true; + $escaped = false; + $quoteChar = $d; + $literal = $d; + $j++; + } + else if($d=="//") //ignore string markers that are found inside comments + { + $inNormalComment = true; + $clean .= $c; + } + else + { + $clean .= $c; + } + } + else //allready in a string so find end quote + { + if($c == $quoteChar && !$escaped && !$inComment) + { + $inQuote = false; + $literal .= $c; + + //subsitute in a marker for the string + $clean .= "___" . count($literal_strings) . "___"; + + //push the string onto our array + array_push($literal_strings,$literal); + + } + else if($inComment && $d=="*/") + { + $inComment = false; + $literal .= $d; + + //subsitute in a marker for the string + $clean .= "___" . count($literal_strings) . "___"; + + //push the string onto our array + array_push($literal_strings,$literal); + + $j++; + } + else if($c == "\\" && !$escaped) + $escaped = true; + else + $escaped = false; + + $literal .= $c; + } + } + if($inComment) $literal .= "\n"; + $clean .= "\n"; + } + //explode the clean string into lines again + $lines = explode("\n",$clean); + + //now process each line at a time + for($i=0;$i<count($lines);$i++) + { + $line = $lines[$i]; + + //remove comments + $line = preg_replace("/\/\/(.*)/","",$line); + + //strip leading and trailing whitespace + $line = trim($line); + + //remove all whitespace with a single space + $line = preg_replace("/\s+/"," ",$line); + + //remove any whitespace that occurs after/before an operator + $line = preg_replace("/\s*([!\}\{;,&=\|\-\+\*\/\)\(:])\s*/","\\1",$line); + + $lines[$i] = $line; + } + + //implode the lines + $sJS = implode("\n",$lines); + + //make sure there is a max of 1 \n after each line + $sJS = preg_replace("/[\n]+/","\n",$sJS); + + //strip out line breaks that immediately follow a semi-colon + $sJS = preg_replace("/;\n/",";",$sJS); + + //curly brackets aren't on their own + $sJS = preg_replace("/[\n]*\{[\n]*/","{",$sJS); + + //finally loop through and replace all the literal strings: + for($i=0;$i<count($literal_strings);$i++) + $sJS = str_replace("___".$i."___",$literal_strings[$i],$sJS); + + return $sJS; +} +?> \ No newline at end of file Added: trunk/rapc/include/xajaxResponse.inc.php =================================================================== --- trunk/rapc/include/xajaxResponse.inc.php (rev 0) +++ trunk/rapc/include/xajaxResponse.inc.php 2006-11-07 13:05:49 UTC (rev 6) @@ -0,0 +1,580 @@ +<?php +/** + * xajaxResponse.inc.php :: xajax XML response class + * + * xajax version 0.2.4 + * copyright (c) 2005 by Jared White & J. Max Wilson + * http://www.xajaxproject.org + * + * xajax is an open source PHP class library for easily creating powerful + * PHP-driven, web-based Ajax Applications. Using xajax, you can asynchronously + * call PHP functions and update the content of your your webpage without + * reloading the page. + * + * xajax is released under the terms of the LGPL license + * http://www.gnu.org/copyleft/lesser.html#SEC3 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + * @package xajax + * @version $Id$ + * @copyright Copyright (c) 2005-2006 by Jared White & J. Max Wilson + * @license http://www.gnu.org/copyleft/lesser.html#SEC3 LGPL License + */ + +/* + ---------------------------------------------------------------------------- + | Online documentation for this class is available on the xajax wiki at: | + | http://wiki.xajaxproject.org/Documentation:xajaxResponse.inc.php | + ---------------------------------------------------------------------------- +*/ + +/** + * The xajaxResponse class is used to create responses to be sent back to your + * Web page. A response contains one or more command messages for updating + * your page. + * Currently xajax supports 21 kinds of command messages, including some common + * ones such as: + * <ul> + * <li>Assign - sets the specified attribute of an element in your page</li> + * <li>Append - appends data to the end of the specified attribute of an + * element in your page</li> + * <li>Prepend - prepends data to the beginning of the specified attribute of + * an element in your page</li> + * <li>Replace - searches for and replaces data in the specified attribute of + * an element in your page</li> + * <li>Script - runs the supplied JavaScript code</li> + * <li>Alert - shows an alert box with the supplied message text</li> + * </ul> + * + * <i>Note:</i> elements are identified by their HTML id, so if you don't see + * your browser HTML display changing from the request, make sure you're using + * the right id names in your response. + * + * @package xajax + */ +class xajaxResponse +{ + /**#@+ + * @access protected + */ + /** + * @var string internal XML storage + */ + var $xml; + /** + * @var string the encoding type to use + */ + var $sEncoding; + /** + * @var boolean if special characters in the XML should be converted to + * entities + */ + var $bOutputEntities; + + /**#@-*/ + + /** + * The constructor's main job is to set the character encoding for the + * response. + * + * <i>Note:</i> to change the character encoding for all of the + * responses, set the XAJAX_DEFAULT_ENCODING constant before you + * instantiate xajax. + * + * @param string contains the character encoding string to use + * @param boolean lets you set if you want special characters in the output + * converted to HTML entities + * + */ + function xajaxResponse($sEncoding=XAJAX_DEFAULT_CHAR_ENCODING, $bOutputEntities=false) + { + $this->setCharEncoding($sEncoding); + $this->bOutputEntities = $bOutputEntities; + } + + /** + * Sets the character encoding for the response based on $sEncoding, which + * is a string containing the character encoding to use. You don't need to + * use this method normally, since the character encoding for the response + * gets set automatically based on the XAJAX_DEFAULT_CHAR_ENCODING + * constant. + * + * @param string + */ + function setCharEncoding($sEncoding) + { + $this->sEncoding = $sEncoding; + } + + /** + * Tells the response object to convert special characters to HTML entities + * automatically (only works if the mb_string extension is available). + */ + function outputEntitiesOn() + { + $this->bOutputEntities = true; + } + + /** + * Tells the response object to output special characters intact. (default + * behavior) + */ + function outputEntitiesOff() + { + $this->bOutputEntities = false; + } + + /** + * Adds a confirm commands command message to the XML response. + * + * <i>Usage:</i> <kbd>$objResponse->addConfirmCommands(1, "Do you want to preview the new data?");</kbd> + * + * @param integer the number of commands to skip if the user presses + * Cancel in the browsers's confirm dialog + * @param string the message to show in the browser's confirm dialog + */ + function addConfirmCommands($iCmdNumber, $sMessage) + { + $this->xml .= $this->_cmdXML(array("n"=>"cc","t"=>$iCmdNumber),$sMessage); + } + + /** + * Adds an assign command message to the XML response. + * + * <i>Usage:</i> <kbd>$objResponse->addAssign("contentDiv", "innerHTML", "Some Text");</kbd> + * + * @param string contains the id of an HTML element + * @param string the part of the element you wish to modify ("innerHTML", + * "value", etc.) + * @param string the data you want to set the attribute to + */ + function addAssign($sTarget,$sAttribute,$sData) + { + $this->xml .= $this->_cmdXML(array("n"=>"as","t"=>$sTarget,"p"=>$sAttribute),$sData); + } + + /** + * Adds an append command message to the XML response. + * + * <i>Usage:</i> <kbd>$objResponse->addAppend("contentDiv", "innerHTML", "Some New Text");</kbd> + * + * @param string contains the id of an HTML element + * @param string the part of the element you wish to modify ("innerHTML", + * "value", etc.) + * @param string the data you want to append to the end of the attribute + */ + function addAppend($sTarget,$sAttribute,$sData) + { + $this->xml .= $this->_cmdXML(array("n"=>"ap","t"=>$sTarget,"p"=>$sAttribute),$sData); + } + + /** + * Adds an prepend command message to the XML response. + * + * <i>Usage:</i> <kbd>$objResponse->addPrepend("contentDiv", "innerHTML", "Some Starting Text");</kbd> + * + * @param string contains the id of an HTML element + * @param string the part of the element you wish to modify ("innerHTML", + * "value", etc.) + * @param string the data you want to prepend to the beginning of the + * attribute + */ + function addPrepend($sTarget,$sAttribute,$sData) + { + $this->xml .= $this->_cmdXML(array("n"=>"pp","t"=>$sTarget,"p"=>$sAttribute),$sData); + } + + /** + * Adds a replace command message to the XML response. + * + * <i>Usage:</i> <kbd>$objResponse->addReplace("contentDiv", "innerHTML", "text", "<b>text</b>");</kbd> + * + * @param string contains the id of an HTML element + * @param string the part of the element you wish to modify ("innerHTML", + * "value", etc.) + * @param string the string to search for + * @param string the string to replace the search string when found in the + * attribute + */ + function addReplace($sTarget,$sAttribute,$sSearch,$sData) + { + $sDta = "<s><![CDATA[$sSearch]]></s><r><![CDATA[$sData]]></r>"; + $this->xml .= $this->_cmdXML(array("n"=>"rp","t"=>$sTarget,"p"=>$sAttribute),$sDta); + } + + /** + * Adds a clear command message to the XML response. + * + * <i>Usage:</i> <kbd>$objResponse->addClear("contentDiv", "innerHTML");</kbd> + * + * @param string contains the id of an HTML element + * @param string the part of the element you wish to clear ("innerHTML", + * "value", etc.) + */ + function addClear($sTarget,$sAttribute) + { + $this->addAssign($sTarget,$sAttribute,''); + } + + /** + * Adds an alert command message to the XML response. + * + * <i>Usage:</i> <kbd>$objResponse->addAlert("This is important information");</kbd> + * + * @param string the text to be displayed in the Javascript alert box + */ + function addAlert($sMsg) + { + $this->xml .= $this->_cmdXML(array("n"=>"al"),$sMsg); + } + + /** + * Uses the addScript() method to add a Javascript redirect to another URL. + * + * <i>Usage:</i> <kbd>$objResponse->addRedirect("http://www.xajaxproject.org");</kbd> + * + * @param string the URL to redirect the client browser to + */ + function addRedirect($sURL) + { + //we need to parse the query part so that the values are rawurlencode()'ed + //can't just use parse_url() cos we could be dealing with a relative URL which + // parse_url() can't deal with. + $queryStart = strpos($sURL, '?', strrpos($sURL, '/')); + if ($queryStart !== FALSE) + { + $queryStart++; + $queryEnd = strpos($sURL, '#', $queryStart); + if ($queryEnd === FALSE) + $queryEnd = strlen($sURL); + $queryPart = substr($sURL, $queryStart, $queryEnd-$queryStart); + parse_str($queryPart, $queryParts); + $newQueryPart = ""; + foreach($queryParts as $key => $value) + { + $newQueryPart .= rawurlencode($key).'='.rawurlencode($value).ini_get('arg_separator.output'); + } + $sURL = str_replace($queryPart, $newQueryPart, $sURL); + } + $this->addScript('window.location = "'.$sURL.'";'); + } + + /** + * Adds a Javascript command message to the XML response. + * + * <i>Usage:</i> <kbd>$objResponse->addScrip... [truncated message content] |
From: <mah...@us...> - 2006-11-07 13:07:36
|
Revision: 6 http://svn.sourceforge.net/rapc/?rev=6&view=rev Author: maher_karim Date: 2006-11-07 05:05:49 -0800 (Tue, 07 Nov 2006) Log Message: ----------- 2006-11-6 Maher Abdel karim <mah...@do...> * address_confirmation.php:fix to deal with multiple results, and zoom to extent. * print.php:deal with address confirmation result.Adjust print layout. 2006-11-5 Maher Abdel karim <mah...@do...> * address_confirmation.php: * map.php:deal with variable passing for AC. * panelinstallation_report.php:adjust date display based on fatimah's remarks. * panelpage.php: * include/public_panel.php:deal with mpwh remarks, and fix the image loading. 2006-10-31 Maher Abdel karim <mah...@do...> * map.php: add new action. * script/create_rapc_ddl.sql: * address_confirmation.php:add address confirmation functionality. * admin/user_management.php:user management tools. 2006-10-17 Maher Abdel karim <mah...@do...> * etc/rapc_flyer.sla:rapc flyer. * dccssconfig.php.default * dccssconfig.php:Add new variables for image loading handling. * dataobject/public_panel.php:Add image loading functionality,regiteration no,adjust calculations filling. * dataobject/rapc.ini:add image, and registerno fields * script/create_rapc_ddl.sql:add image, and regiterno fields to panel table. * index.php:Add ministry logos. * panelpage.php:introduce move_file(),implement xajax for regiterno field. * include/xajax_js/*:files needed to implement xajax Modified Paths: -------------- trunk/rapc/changelog trunk/rapc/conf/dccssconfig.php trunk/rapc/conf/dccssconfig.php.default trunk/rapc/conf/rapc_en.map trunk/rapc/include/i18n.php trunk/rapc/locale/ar/LC_MESSAGES/rapc.po trunk/rapc/map.php trunk/rapc/panelinstallation_report.php trunk/rapc/panelpage.php trunk/rapc/print.php trunk/rapc/script/create_rapc_ddl.sql Added Paths: ----------- trunk/rapc/images/northarrow.PNG trunk/rapc/include/xajax.inc.php trunk/rapc/include/xajaxCompress.php trunk/rapc/include/xajaxResponse.inc.php trunk/rapc/include/xajax_js/ trunk/rapc/include/xajax_js/xajax.js trunk/rapc/include/xajax_js/xajax_uncompressed.js This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-10-16 08:10:55
|
Revision: 5 http://svn.sourceforge.net/rapc/?rev=5&view=rev Author: maher_karim Date: 2006-10-16 01:00:16 -0700 (Mon, 16 Oct 2006) Log Message: ----------- add doc Added Paths: ----------- trunk/rapc/doc/ trunk/rapc/doc/administration/ trunk/rapc/doc/administration/docbook.css trunk/rapc/doc/administration/figure/ trunk/rapc/doc/administration/figure/administrative_tools_icon.png trunk/rapc/doc/administration/figure/apache_information.png trunk/rapc/doc/administration/figure/apache_install.png trunk/rapc/doc/administration/figure/apache_license.png trunk/rapc/doc/administration/figure/apache_location.png trunk/rapc/doc/administration/figure/apache_readme.png trunk/rapc/doc/administration/figure/apache_setup_type.png trunk/rapc/doc/administration/figure/apache_wizard.png trunk/rapc/doc/administration/figure/client_server_deployment.BMP trunk/rapc/doc/administration/figure/client_server_deployment.png trunk/rapc/doc/administration/figure/client_server_deployment.svg trunk/rapc/doc/administration/figure/control_panel.png trunk/rapc/doc/administration/figure/dccss_components.PNG trunk/rapc/doc/administration/figure/dccss_database_connection.png trunk/rapc/doc/administration/figure/dccss_license.png trunk/rapc/doc/administration/figure/dccss_location.png trunk/rapc/doc/administration/figure/dccss_uml.png trunk/rapc/doc/administration/figure/dccss_uml.vsd trunk/rapc/doc/administration/figure/gis_data_review.png trunk/rapc/doc/administration/figure/internet_deployment.png trunk/rapc/doc/administration/figure/internet_deployment.svg trunk/rapc/doc/administration/figure/php_components.png trunk/rapc/doc/administration/figure/php_license.png trunk/rapc/doc/administration/figure/php_location.png trunk/rapc/doc/administration/figure/poedit_php_parser.png trunk/rapc/doc/administration/figure/poedit_php_path.png trunk/rapc/doc/administration/figure/postgis_components.png trunk/rapc/doc/administration/figure/postgis_database_connection.png trunk/rapc/doc/administration/figure/postgis_installation_complete.png trunk/rapc/doc/administration/figure/postgis_license.png trunk/rapc/doc/administration/figure/postgis_location.png trunk/rapc/doc/administration/figure/postgis_patience.png trunk/rapc/doc/administration/figure/postgis_reboot.png trunk/rapc/doc/administration/figure/postgresql_account_error.png trunk/rapc/doc/administration/figure/postgresql_contrib_modules.png trunk/rapc/doc/administration/figure/postgresql_database_cluster.png trunk/rapc/doc/administration/figure/postgresql_enable_postgis.png trunk/rapc/doc/administration/figure/postgresql_installation_complete.png trunk/rapc/doc/administration/figure/postgresql_installation_notes.png trunk/rapc/doc/administration/figure/postgresql_installation_options.png trunk/rapc/doc/administration/figure/postgresql_installation_ready.png trunk/rapc/doc/administration/figure/postgresql_language_selection.png trunk/rapc/doc/administration/figure/postgresql_log_on_as_service.png trunk/rapc/doc/administration/figure/postgresql_password.png trunk/rapc/doc/administration/figure/postgresql_procedural_languages.png trunk/rapc/doc/administration/figure/postgresql_service_configuration.png trunk/rapc/doc/administration/figure/postgresql_users.png trunk/rapc/doc/administration/figure/postgresql_welcome.png trunk/rapc/doc/administration/figure/postmaster_service.png trunk/rapc/doc/administration/figure/postmaster_service_logon.png trunk/rapc/doc/administration/figure/postmaster_service_properties.png trunk/rapc/doc/administration/figure/rapc_components.PNG trunk/rapc/doc/administration/figure/rapc_database_connection.png trunk/rapc/doc/administration/figure/rapc_location.png trunk/rapc/doc/administration/figure/rapc_uml.png trunk/rapc/doc/administration/figure/rapc_uml.vsd trunk/rapc/doc/administration/figure/service_start.png trunk/rapc/doc/administration/figure/service_stop.png trunk/rapc/doc/administration/figure/services_context_menu.png trunk/rapc/doc/administration/figure/services_icon.png trunk/rapc/doc/administration/figure/standalone_deployment.png trunk/rapc/doc/administration/figure/standalone_deployment.svg trunk/rapc/doc/administration/figure/uml_legend.png trunk/rapc/doc/administration/figure/windows_users.png trunk/rapc/doc/administration/figure/windows_users.svg trunk/rapc/doc/administration/images/ trunk/rapc/doc/administration/images/blank.png trunk/rapc/doc/administration/images/callouts/ trunk/rapc/doc/administration/images/callouts/1.png trunk/rapc/doc/administration/images/callouts/10.png trunk/rapc/doc/administration/images/callouts/11.png trunk/rapc/doc/administration/images/callouts/12.png trunk/rapc/doc/administration/images/callouts/13.png trunk/rapc/doc/administration/images/callouts/14.png trunk/rapc/doc/administration/images/callouts/15.png trunk/rapc/doc/administration/images/callouts/2.png trunk/rapc/doc/administration/images/callouts/3.png trunk/rapc/doc/administration/images/callouts/4.png trunk/rapc/doc/administration/images/callouts/5.png trunk/rapc/doc/administration/images/callouts/6.png trunk/rapc/doc/administration/images/callouts/7.png trunk/rapc/doc/administration/images/callouts/8.png trunk/rapc/doc/administration/images/callouts/9.png trunk/rapc/doc/administration/images/caution.png trunk/rapc/doc/administration/images/caution.svg trunk/rapc/doc/administration/images/draft.png trunk/rapc/doc/administration/images/example.png trunk/rapc/doc/administration/images/home.png trunk/rapc/doc/administration/images/home.svg trunk/rapc/doc/administration/images/important.png trunk/rapc/doc/administration/images/important.svg trunk/rapc/doc/administration/images/next.png trunk/rapc/doc/administration/images/next.svg trunk/rapc/doc/administration/images/note.png trunk/rapc/doc/administration/images/note.svg trunk/rapc/doc/administration/images/prev.png trunk/rapc/doc/administration/images/prev.svg trunk/rapc/doc/administration/images/tip.png trunk/rapc/doc/administration/images/tip.svg trunk/rapc/doc/administration/images/toc-blank.png trunk/rapc/doc/administration/images/toc-minus.png trunk/rapc/doc/administration/images/toc-plus.png trunk/rapc/doc/administration/images/up.png trunk/rapc/doc/administration/images/up.svg trunk/rapc/doc/administration/images/warning.svg trunk/rapc/doc/administration/rapc_administration_guide.xml trunk/rapc/doc/administration/toc.hhc trunk/rapc/doc/build.xml trunk/rapc/doc/dccss_docbook_html.xsl trunk/rapc/doc/dccss_docbook_htmlhelp.xsl trunk/rapc/doc/dccss_docbook_pdf.xsl trunk/rapc/doc/dcmms.xsl trunk/rapc/doc/development/ trunk/rapc/doc/docbook.css trunk/rapc/doc/rapc_docbook_html.xsl trunk/rapc/doc/rapc_docbook_htmlhelp.xsl trunk/rapc/doc/rapc_docbook_pdf.xsl trunk/rapc/doc/user/ trunk/rapc/doc/user/ar/ trunk/rapc/doc/user/en/ trunk/rapc/doc/user/en/docbook.css trunk/rapc/doc/user/en/figure/ trunk/rapc/doc/user/en/figure/error_page_cannot_be_displayed.png trunk/rapc/doc/user/en/figure/stock-tool-move.png trunk/rapc/doc/user/en/figure/stock_extended-help.png trunk/rapc/doc/user/en/figure/stock_zoom-in.png trunk/rapc/doc/user/en/figure/stock_zoom-out.png trunk/rapc/doc/user/en/images/ trunk/rapc/doc/user/en/images/blank.png trunk/rapc/doc/user/en/images/callouts/ trunk/rapc/doc/user/en/images/callouts/1.png trunk/rapc/doc/user/en/images/callouts/10.png trunk/rapc/doc/user/en/images/callouts/11.png trunk/rapc/doc/user/en/images/callouts/12.png trunk/rapc/doc/user/en/images/callouts/13.png trunk/rapc/doc/user/en/images/callouts/14.png trunk/rapc/doc/user/en/images/callouts/15.png trunk/rapc/doc/user/en/images/callouts/2.png trunk/rapc/doc/user/en/images/callouts/3.png trunk/rapc/doc/user/en/images/callouts/4.png trunk/rapc/doc/user/en/images/callouts/5.png trunk/rapc/doc/user/en/images/callouts/6.png trunk/rapc/doc/user/en/images/callouts/7.png trunk/rapc/doc/user/en/images/callouts/8.png trunk/rapc/doc/user/en/images/callouts/9.png trunk/rapc/doc/user/en/images/caution.png trunk/rapc/doc/user/en/images/caution.svg trunk/rapc/doc/user/en/images/draft.png trunk/rapc/doc/user/en/images/example.png trunk/rapc/doc/user/en/images/home.png trunk/rapc/doc/user/en/images/home.svg trunk/rapc/doc/user/en/images/important.png trunk/rapc/doc/user/en/images/important.svg trunk/rapc/doc/user/en/images/next.png trunk/rapc/doc/user/en/images/next.svg trunk/rapc/doc/user/en/images/note.png trunk/rapc/doc/user/en/images/note.svg trunk/rapc/doc/user/en/images/prev.png trunk/rapc/doc/user/en/images/prev.svg trunk/rapc/doc/user/en/images/tip.png trunk/rapc/doc/user/en/images/tip.svg trunk/rapc/doc/user/en/images/toc-blank.png trunk/rapc/doc/user/en/images/toc-minus.png trunk/rapc/doc/user/en/images/toc-plus.png trunk/rapc/doc/user/en/images/up.png trunk/rapc/doc/user/en/images/up.svg trunk/rapc/doc/user/en/images/warning.svg trunk/rapc/doc/user/en/rapc_user_guide.xml trunk/rapc/doc/user/en/toc.hhc Added: trunk/rapc/doc/administration/docbook.css =================================================================== --- trunk/rapc/doc/administration/docbook.css (rev 0) +++ trunk/rapc/doc/administration/docbook.css 2006-10-16 08:00:16 UTC (rev 5) @@ -0,0 +1,566 @@ +/* css 2.0 stylesheet for DocBook generated XHTML */ +/* (c) 2002 e-novative GmbH. */ +/* http://www.e-novative.de */ +/* (c) 2005 DORSCH Consult */ +/* http://www.dorsch.de */ + +/* Note that due to different browser interpretation of the standards, the */ +/* html pages still do not look exactly the same on every browser and system */ + +/* This css file formats the html generated by the eDE */ +/* Please modify this file according to your personal preferences. */ + +/* In many spots, this file is not too well-documented currently. However, */ +/* we will improve documentation over the time */ + +/* basic settings for the document body, some elements inherit from these */ + +div.author { + text-align: center; + display: block; +} + +div.author h3 { + display: inline; + text-align: center; +} + +body +{ + /* foreground color = black */ + color: #000; + + /* background-color = white */ + background-color: #fff; + + /* center the body content in browser window */ + /* Note: this is different from text-align */ + /* margin depends on browser window width */ + margin: auto; + + /* padding ("inner margin") leaves space between */ + /* browser window border and html body content */ + padding: 24px; + + /* width depends on browser window width */ + width: auto; + + /* text-alignment */ + /* alternative: left */ + text-align: justify; +} + + +/* set font for most elements */ +/* p: paragraphs (regular text, docbook <para>) */ +/* (...) */ +/* body: anything else */ +body, p, td, li, dt, dd, +{ + /* set font size and line height */ + /* list of fonts provides fallbacks if a font is not present */ + font: 12px/18px Verdana, Arial, Helvetica, Sans-Serif; +} + + +/* pararaphs (docbook: <para>) */ +p +{ + /* set font size and line height */ + /* list of fonts provides fallbacks if a font is not present */ + font: 12px/18px Verdana, Arial, Helvetica, Sans-Serif; + + /* margin settings are top - right - bottom - left (think clockwise) */ + margin: 0 15px 6px 15px; +} + + +/* images */ +/* docbook: <imageobject> */ +img +{ + /* no margin */ + margin: 0; + + /* no padding ("inner margin") */ + padding: 0; + + /* no border */ + border: 0; +} + + +/* emphasized text, can occur in most places */ +/* docbook: <emphasis> */ +em +{ + /* bold face, higher number is more bold */ + font-weight: 600; + /* italic */ + font-style: italic; +} + + +/* sect(ion)1 title */ +h2 +{ + /* list of fonts provides fallbacks if a font is not present */ + font-family: Verdana, Arial, Helvetica, Sans-Serif; + + /* font size, relative to body font size */ + font-size: 125%; + + /* bold face, higher number is more bold */ + font-weight: 600; + + /* underlined text */ + text-decoration: none; + + /* foreground color: dark blue */ + color: #009; + + /* background color: gray */ + background-color: #ddd; + + /* margin settings are top - right - bottom - left (think clockwise) */ + margin: 15px 0 15px 0; + + /* padding ("inner margin") settings are top - right - bottom - left */ + /* (think clockwise) */ + padding: 12px 15px 12px 15px; +} + + +/* sect(ion)2 title */ +h3 +{ + /* list of fonts provides fallbacks if a font is not present */ + font-family: Verdana, Arial, Helvetica, Sans-Serif; + + /* font size, relative to body font size */ + font-size: 110%; + + /* bold face, higher number is more bold */ + font-weight: 600; + + /* underlined text */ + text-decoration: none; + + /* foreground color: dark blue */ + color: #009; + + /* background-color is a very light grey */ + /* alternative: #fff = white */ + background-color: #fefefe; + + /* padding ("inner margin") settings are top - right - bottom - left */ + /* (think clockwise) */ + padding: 0 0 0 15px; +} + + +/* sect(ion)3 title */ +h4 +{ + /* list of fonts provides fallbacks if a font is not present */ + font-family: Verdana, Arial, Helvetica, Sans-Serif; + + /* font size, relative to body font size */ + font-size: 100%; + + /* bold face, higher number is more bold */ + font-weight: 600; + + /* underlined text */ + text-decoration: none; + + /* foreground color: dark blue */ + color: #009; + + /* background-color is a very light grey */ + /* alternative: #fff = white */ + background-color: #fefefe; + + /* padding ("inner margin") settings are top - right - bottom - left */ + /* (think clockwise) */ + padding: 0 0 0 15px; +} + + +/* sect(ion)4 title */ +h5 +{ + /* list of fonts provides fallbacks if a font is not present */ + font-family: Verdana, Arial, Helvetica, Sans-Serif; + + /* font size, relative to body font size */ + font-size: 100%; + + /* bold face, higher number is more bold */ + font-weight: 300; + + /* not underlined */ + text-decoration: none ; + + /* foreground color: dark blue */ + color: #009; + + /* background-color is a very light grey */ + /* alternative: #fff = white */ + background-color: #fefefe; + + /* padding ("inner margin") settings are top - right - bottom - left */ + /* (think clockwise) */ + padding: 0 0 0 15px; +} + + + + + +/* define special font for e-novative logo */ +/* list of fonts provides fallbacks in case selected fonts are not present */ +.logo +{ + font-family: Lucida Console, Verdana, Arial, Sans-Serif; +} + + +/* the following formats refer to the docbook tags of the same name */ +/* for more information, see the docbook reference at */ +/* http://www.docbook.org/tdg/en/html/docbook.html */ + +.mediaobject +{ + /* center */ + text-align: center; +} + + +/* */ +.calloutlist, .figure, .table +{ + /* margin settings are top - right - bottom - left (think clockwise) */ + margin: 15px 30px 15px 30px; +} + + +/* */ +.itemizedlist, .variablelist { + /* margin settings are top - right - bottom - left (think clockwise) */ + margin: 15px 30px 15px 15px; +} + +/* blockquote formatting is a little more complex */ +/* because block quotes are rendered as a html table */ + +/* blockquote block */ +.blockquote +{ + /* override bottom margin, the other margins are inherited */ + margin-bottom: 30px; +} + +.blockquote p, .blockquote td +{ + /* set font size and line height */ + /* list of fonts provides fallbacks if a font is not present */ + font: 12px/18px Verdana, Arial, Helvetica, Sans-Serif; + + /* bold face, higher number is more bold */ + font-weight: 450; +} + + +.epigraph +{ + /* override bottom margin, the other margins are inherited */ + margin-bottom: 30px; +} + +.epigraph p, .epigraph td +{ + /* set font size and line height */ + /* list of fonts provides fallbacks if a font is not present */ + font: 10px/14px Verdana, Arial, Helvetica, Sans-Serif; + + /* bold face, higher number is more bold */ + font-weight: 600; +} + + + +/* custom e-novative header and footer that are displayed on all pages */ +#customheader, #customfooter +{ + /* list of fonts provides fallbacks if a font is not present */ + font-family: Verdana, Arial, Helvetica, Sans-Serif; + + /* font size, relative to body font size */ + font-size: 80%; + + /* line height, relative to body font size */ + line-height: 200%; + + + text-align: center; + vertical-align: middle; + color: #fff; + background-color: #009; +} + + +/* leave more space between last paragraph and footer */ +/* some browser do not add up the bottom margin of the prior element */ +/* and the top margin of the footer */ +#customfooter { + margin-top: 15px; +} + + + +/* table { margin: 0 15px 6px 15px; } */ + + +/* title and navigation links in header and footer */ +.navheader th, .navheader td, .navfooter th, .navfooter td +{ + font-size: 11px; + font-weight: 450; +} + + +/* table of contents, list of figures and list of tables */ +.toc, .list-of-figures, .list-of-tables +{ + /* margin settings are top - right - bottom - left (think clockwise) */ + margin: 15px 30px 15px 15px; +} + + +/* the "headings" are rendered as paragraphs */ +.toc p, .list-of-figures p, .list-of-tables p +{ + /* no margin */ + margin: 0; +} + + +.figure +{ + /* margin settings are top - right - bottom - left (think clockwise) */ + margin: 5px 5px 5px 5px; + + /* no padding ("inner border") */ + padding: 0; + + /* no border */ + border: 0; + + /* center text */ + text-align: center; +} + + +/* figure title */ +.figure p, .table p, .example p +{ + font-size: 80%; +} + + +/* +acronym { + border-bottom: 1px dashed #00cc00; + cursor: help; +} +*/ + + +/* admonition headings */ +div.note, div.important, div.warning, div.caution, div.tip +{ + padding: 0px 15px 0px 0px; +} + +div.note th, div.important th, div.warning th, div.caution th, div.tip th +{ + /* set font size and line height */ + /* list of fonts provides fallbacks if a font is not present */ + font: 12px/18px Verdana, Arial, Helvetica, Sans-Serif; + + font-weight: 600; + + text-decoration: underline; + + /* left align */ + text-align: left; +} + +.note p, .important p, .warning p, .caution p, .tip p +{ + margin: 0; +} + +.note img, .important img, .warning img, .caution img, .tip img +{ + margin: 0px 15px 0px 15px; +} + + +/* programlisting */ +pre.programlisting +{ + /* non-proportional font */ + /* list of fonts provides fallbacks if a font is not present */ + font-family: "Courier New", Courier, Monospace; + + /* color: black */ + color: #000; + + /* background color: gray */ + background-color: #eee; + + /* no margin */ + margin: 0; + + /* gray dotted border, 1 px wide */ + border: 1px dotted #ddd; + + /* padding ("inner margin") settings are top - right - bottom - left */ + /* (think clockwise) */ + padding: 6px 6px 6px 6px; +} + + +/* title page */ + + +/* heading1 is used for document title */ +h1 +{ + /* list of fonts provides fallbacks if a font is not present */ + font-family: Verdana, Arial, Helvetica, Sans-Serif; + + /* font size, relative to body font size */ + font-size: 150%; + + /* bold face, higher number is more bold */ + font-weight: 600; + + /* line height, relative to body line height */ + line-height: 250%; + + /* center */ + text-align: center; + + /* foreground color: dark blue */ + color: #009; + + /* background color: gray */ + background-color: #ddd; + + /* margin settings are top - right - bottom - left (think clockwise) */ + margin: 15px 0 15px 0; + + /* no padding ("inner margin") */ + padding: 0; +} + + + +/* author on title page is formatted as h3 */ +/* these settings overwrite the regular h3 settings */ +h3.author +{ + /* set font size and line height */ + /* list of fonts provides fallbacks in case selected fonts are not present */ + font: 12px/18px Verdana, Arial, Helvetica, Sans-Serif; + + /* bold face, higher number is more bold */ + font-weight: 600; + + /* do not underline */ + text-decoration: none; + + /* center text */ + text-align: center; + + /* color: black */ + color: #000; + + /* background-color is a very light grey */ + /* alternative: #fff = white */ + background-color: #fefefe; + + /* margin settings are top - right - bottom - left (think clockwise) */ + margin: 0 15px 15px 15px; + + /* no padding */ + padding: 0; + + /* no border */ + border: 0; +} + + +/* copyright and date */ +.copyright, .pubdate +{ + /* list of fonts provides fallbacks if a font is not present */ + font-family: Verdana, Arial, Helvetica, Sans-Serif; + + /* font size, relative to body font size */ + font-size: 90%; + + /* center */ + text-align: center; + + /* margin settings are top - right - bottom - left (think clockwise) */ + margin: 15px 15px 15px 15px; + + /* no padding ("inner margin") */ + padding: 0; + + /* no border */ + border: 0; +} + + +/* legal notice box */ +div.legalnotice +{ + /* list of fonts provides fallbacks if a font is not present */ + font-family: Verdana, Arial, Helvetica, Sans-Serif; + + /* font size, relative to body font size */ + font-size: 90%; + + /* color: black */ + color: #000; + + /* background color: gray */ + background-color: #ddd; + + /* margin settings are top - right - bottom - left (think clockwise) */ + margin: 10px 45px 10px 45px; + + /* padding ("inner margin") settings are top - right - bottom - left */ + /* (think clockwise) */ + padding: 5px 5px 5px 5px; + + /* solid black border, 1px wide */ + border: 1px solid #000; +} + +.guilabel { + font-weight: bold; + color: #009; +} + +.guibutton { + background-color: #ddd; + border: 1px solid black; + font-weight: bold; + padding: 0px 1px 0px 1px; +} \ No newline at end of file Added: trunk/rapc/doc/administration/figure/administrative_tools_icon.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/administrative_tools_icon.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/apache_information.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/apache_information.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/apache_install.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/apache_install.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/apache_license.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/apache_license.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/apache_location.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/apache_location.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/apache_readme.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/apache_readme.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/apache_setup_type.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/apache_setup_type.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/apache_wizard.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/apache_wizard.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/client_server_deployment.BMP =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/client_server_deployment.BMP ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/client_server_deployment.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/client_server_deployment.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/client_server_deployment.svg =================================================================== --- trunk/rapc/doc/administration/figure/client_server_deployment.svg (rev 0) +++ trunk/rapc/doc/administration/figure/client_server_deployment.svg 2006-10-16 08:00:16 UTC (rev 5) @@ -0,0 +1,96 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="2.35042in" + height="1.75667in" viewBox="0 0 169.23 126.48" xml:space="preserve" color-interpolation-filters="sRGB" class="st7"> + <title>uml</title> + <style type="text/css"> + <![CDATA[ + .st1 {fill:#c0c0c0;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24} + .st2 {fill:#ffffff;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24} + .st3 {fill:#000000;font-family:Arial;font-size:0.666664em;font-weight:bold} + .st4 {fill:none;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.72} + .st5 {fill:#000000;font-family:Arial;font-size:0.666664em} + .st6 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.48} + .st7 {fill:none;fill-rule:evenodd;font-size:12;overflow:visible;stroke-linecap:square;stroke-miterlimit:3} + ]]> + </style> + <g > + <title>Stand-alone deployment</title> + <g id="group1-1" transform="translate(0.24,-0.24)" > + <title>Node</title> + <g id="shape2-2" transform="translate(159.75,1.42109E-014)"> + <title>Sheet.2</title> + <path d="M0 126.48 L9 117.48 L9 0.48 L0 9.48 L0 126.48 Z" class="st1"/> + </g> + <g id="shape3-4" transform="translate(0,-117)"> + <title>Sheet.3</title> + <path d="M0 126.48 L159.75 126.48 L168.75 117.48 L9 117.48 L0 126.48 Z" class="st1"/> + </g> + <g id="shape4-6" > + <title>Name</title> + <desc>DCMMS PC</desc> + <rect x="0" y="9.48" width="159.75" height="117" class="st2"/> + <text x="4" y="20.68" class="st3" >DCMMS PC</text> </g> + </g> + <g id="group5-9" transform="translate(14.7265,-58.74)" > + <title>Component</title> + <g id="shape6-10" transform="translate(12.6,1.42109E-014)"> + <title>Sheet.6</title> + <rect x="0" y="90.48" width="80.9271" height="36" class="st2"/> + </g> + <g id="shape7-12" transform="translate(0,-22.5)"> + <title>Sheet.7</title> + <rect x="0" y="117.48" width="25.2" height="9" class="st2"/> + </g> + <g id="shape8-14" transform="translate(0,-4.5)"> + <title>Sheet.8</title> + <rect x="0" y="117.48" width="25.2" height="9" class="st2"/> + </g> + <g id="shape9-16" transform="translate(25.2,1.42109E-014)"> + <title>Name</title> + <desc>DCMMS Server</desc> + <rect x="0" y="90.48" width="68.3271" height="36" class="st4"/> + <text x="5.5" y="110.88" class="st3" >DCMMS Server</text> </g> + </g> + <g id="group10-19" transform="translate(17.3416,-9.24)" > + <title>Component.10</title> + <g id="shape11-20" transform="translate(12.6,1.42109E-014)"> + <title>Sheet.11</title> + <rect x="0" y="90.48" width="74.6967" height="36" class="st2"/> + </g> + <g id="shape12-22" transform="translate(0,-22.5)"> + <title>Sheet.12</title> + <rect x="0" y="117.48" width="25.2" height="9" class="st2"/> + </g> + <g id="shape13-24" transform="translate(0,-4.5)"> + <title>Sheet.13</title> + <rect x="0" y="117.48" width="25.2" height="9" class="st2"/> + </g> + <g id="shape14-26" transform="translate(25.2,1.42109E-014)"> + <title>Name</title> + <desc>Web Browser</desc> + <rect x="0" y="90.48" width="62.0967" height="36" class="st4"/> + <text x="5.49" y="110.88" class="st3" >Web Browser</text> </g> + </g> + <g id="group15-29" transform="translate(113.533,-76.74)" > + <title>Communicates</title> + <g id="shape16-30" transform="translate(3.43255,-5.09117)"> + <title>end1_name</title> + </g> + <g id="shape17-32" transform="translate(3.43255,22.6947)"> + <title>end1_mp</title> + <desc>1</desc> + <text x="5.5" y="120.08" class="st5" >1</text> </g> + <g id="shape18-35" transform="translate(-0.00744535,72.1912)"> + <title>end2_name</title> + </g> + <g id="shape19-37" transform="translate(-0.00744535,44.4088)"> + <title>end2_mp</title> + <desc>1</desc> + <text x="5.5" y="120.08" class="st5" >1</text> </g> + <g id="shape15-40" > + <path d="M-5.28 126.48 L-5.37 126.48 L29.96 126.48 L29.96 175.98 L-8.81 175.98 L-8.89 175.98" class="st6"/> + </g> + </g> + </g> +</svg> Added: trunk/rapc/doc/administration/figure/control_panel.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/control_panel.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/dccss_components.PNG =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/dccss_components.PNG ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/dccss_database_connection.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/dccss_database_connection.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/dccss_license.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/dccss_license.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/dccss_location.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/dccss_location.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/dccss_uml.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/dccss_uml.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/dccss_uml.vsd =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/dccss_uml.vsd ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/gis_data_review.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/gis_data_review.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/internet_deployment.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/internet_deployment.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/internet_deployment.svg =================================================================== --- trunk/rapc/doc/administration/figure/internet_deployment.svg (rev 0) +++ trunk/rapc/doc/administration/figure/internet_deployment.svg 2006-10-16 08:00:16 UTC (rev 5) @@ -0,0 +1,209 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Generated by Microsoft Visio 11.0, SVG Export, v1.0 internet_deployment.svg Internet Deployment --> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="5.38167in" + height="2.66292in" viewBox="0 0 387.48 191.73" xml:space="preserve" color-interpolation-filters="sRGB" class="st7"> + <title>uml</title> + <style type="text/css"> + <![CDATA[ + .st1 {fill:#c0c0c0;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24} + .st2 {fill:#ffffff;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24} + .st3 {fill:#000000;font-family:Arial;font-size:0.666664em;font-weight:bold} + .st4 {fill:none;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.72} + .st5 {fill:#000000;font-family:Arial;font-size:0.666664em} + .st6 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.48} + .st7 {fill:none;fill-rule:evenodd;font-size:12;overflow:visible;stroke-linecap:square;stroke-miterlimit:3} + ]]> + </style> + <g > + <title>Internet Deployment</title> + <g id="group24-1" transform="translate(180.24,-72.24)" > + <title>Node.24</title> + <g id="shape25-2" transform="translate(198,0)"> + <title>Sheet.25</title> + <path d="M0 191.73 L9 182.73 L9 74.73 L0 83.73 L0 191.73 Z" class="st1"/> + </g> + <g id="shape26-4" transform="translate(0,-108)"> + <title>Sheet.26</title> + <path d="M0 191.73 L198 191.73 L207 182.73 L9 182.73 L0 191.73 Z" class="st1"/> + </g> + <g id="shape27-6" > + <title>Name</title> + <desc>VPN Server</desc> + <rect x="0" y="83.73" width="198" height="108" class="st2"/> + <text x="4" y="94.93" class="st3" >VPN Server</text> </g> + </g> + <g id="group1-9" transform="translate(0.24,-0.24)" > + <title>Node.20</title> + <g id="shape2-10" transform="translate(162,0)"> + <title>Sheet.2</title> + <path d="M0 191.73 L9 182.73 L9 119.73 L0 128.73 L0 191.73 Z" class="st1"/> + </g> + <g id="shape3-12" transform="translate(0,-63)"> + <title>Sheet.3</title> + <path d="M0 191.73 L162 191.73 L171 182.73 L9 182.73 L0 191.73 Z" class="st1"/> + </g> + <g id="shape4-14" > + <title>Name</title> + <desc>DCMMS Client</desc> + <rect x="0" y="128.73" width="162" height="63" class="st2"/> + <text x="4" y="139.93" class="st3" >DCMMS Client</text> </g> + </g> + <g id="group5-17" transform="translate(1.365,-90.24)" > + <title>Node</title> + <g id="shape6-18" transform="translate(159.75,0)"> + <title>Sheet.6</title> + <path d="M0 191.73 L9 182.73 L9 90.48 L0 99.48 L0 191.73 Z" class="st1"/> + </g> + <g id="shape7-20" transform="translate(0,-92.25)"> + <title>Sheet.7</title> + <path d="M0 191.73 L159.75 191.73 L168.75 182.73 L9 182.73 L0 191.73 Z" class="st1"/> + </g> + <g id="shape8-22" > + <title>Name</title> + <desc>DCMMS Server</desc> + <rect x="0" y="99.48" width="159.75" height="92.25" class="st2"/> + <text x="4" y="110.68" class="st3" >DCMMS Server</text> </g> + </g> + <g id="group9-25" transform="translate(16.9765,-99.24)" > + <title>Component</title> + <g id="shape10-26" transform="translate(12.6,0)"> + <title>Sheet.10</title> + <rect x="0" y="155.73" width="80.9271" height="36" class="st2"/> + </g> + <g id="shape11-28" transform="translate(0,-22.5)"> + <title>Sheet.11</title> + <rect x="0" y="182.73" width="25.2" height="9" class="st2"/> + </g> + <g id="shape12-30" transform="translate(0,-4.5)"> + <title>Sheet.12</title> + <rect x="0" y="182.73" width="25.2" height="9" class="st2"/> + </g> + <g id="shape13-32" transform="translate(25.2,0)"> + <title>Name</title> + <desc>DCMMS Server</desc> + <rect x="0" y="155.73" width="68.3271" height="36" class="st4"/> + <text x="5.5" y="176.13" class="st3" >DCMMS Server</text> </g> + </g> + <g id="group14-35" transform="translate(16.9716,-9.24)" > + <title>Component.10</title> + <g id="shape15-36" transform="translate(12.6,0)"> + <title>Sheet.15</title> + <rect x="0" y="155.73" width="74.6967" height="36" class="st2"/> + </g> + <g id="shape16-38" transform="translate(0,-22.5)"> + <title>Sheet.16</title> + <rect x="0" y="182.73" width="25.2" height="9" class="st2"/> + </g> + <g id="shape17-40" transform="translate(0,-4.5)"> + <title>Sheet.17</title> + <rect x="0" y="182.73" width="25.2" height="9" class="st2"/> + </g> + <g id="shape18-42" transform="translate(25.2,0)"> + <title>Name</title> + <desc>Web Browser</desc> + <rect x="0" y="155.73" width="62.0967" height="36" class="st4"/> + <text x="5.49" y="176.13" class="st3" >Web Browser</text> </g> + </g> + <g id="group19-45" transform="translate(348.222,-126.24)" > + <title>Communicates</title> + <g id="shape20-46" transform="translate(16.1847,-5.09117)"> + <title>end1_name</title> + </g> + <g id="shape21-48" transform="translate(16.1847,22.6947)"> + <title>end1_mp</title> + <desc>1</desc> + <text x="5.5" y="185.33" class="st5" >1</text> </g> + <g id="shape22-51" transform="translate(-227.769,121.691)"> + <title>end2_name</title> + </g> + <g id="shape23-53" transform="translate(-227.769,93.9088)"> + <title>end2_mp</title> + <desc>*</desc> + <text x="5.49" y="185.33" class="st5" >*</text> </g> + <g id="shape19-56" > + <path d="M0 191.73 L13.42 191.73 L13.42 290.73 L-243.95 290.73" class="st6"/> + </g> + </g> + <g id="group28-59" transform="translate(282.258,-108.24)" > + <title>Component.28</title> + <g id="shape29-60" transform="translate(12.6,0)"> + <title>Sheet.29</title> + <rect x="0" y="155.73" width="53.3646" height="36" class="st2"/> + </g> + <g id="shape30-62" transform="translate(0,-22.5)"> + <title>Sheet.30</title> + <rect x="0" y="182.73" width="25.2" height="9" class="st2"/> + </g> + <g id="shape31-64" transform="translate(0,-4.5)"> + <title>Sheet.31</title> + <rect x="0" y="182.73" width="25.2" height="9" class="st2"/> + </g> + <g id="shape32-66" transform="translate(25.2,0)"> + <title>Name</title> + <desc>Firewall</desc> + <rect x="0" y="155.73" width="40.7646" height="36" class="st4"/> + <text x="5.48" y="176.13" class="st3" >Firewall</text> </g> + </g> + <g id="group33-69" transform="translate(191.881,-108.24)" > + <title>Component.33</title> + <g id="shape34-70" transform="translate(12.6,0)"> + <title>Sheet.34</title> + <rect x="0" y="155.73" width="67.1573" height="36" class="st2"/> + </g> + <g id="shape35-72" transform="translate(0,-22.5)"> + <title>Sheet.35</title> + <rect x="0" y="182.73" width="25.2" height="9" class="st2"/> + </g> + <g id="shape36-74" transform="translate(0,-4.5)"> + <title>Sheet.36</title> + <rect x="0" y="182.73" width="25.2" height="9" class="st2"/> + </g> + <g id="shape37-76" transform="translate(25.2,0)"> + <title>Name</title> + <desc>VPN Server</desc> + <rect x="0" y="155.73" width="54.5573" height="36" class="st4"/> + <text x="5.48" y="176.13" class="st3" >VPN Server</text> </g> + </g> + <g id="group38-79" transform="translate(315.24,-99.24)" > + <title>Dynamic Connector</title> + <g id="shape39-80" transform="translate(5.09117,17.8156)"> + <title>end1_name</title> + </g> + <g id="shape40-82" transform="translate(-20.5163,17.8191)"> + <title>end1_mp</title> + <desc>1</desc> + <text x="5.5" y="185.33" class="st5" >1</text> </g> + <g id="shape41-85" transform="translate(-96.5712,17.8156)"> + <title>end2_name</title> + </g> + <g id="shape42-87" transform="translate(-78.3888,17.8191)"> + <title>end2_mp</title> + <desc>1</desc> + <text x="5.5" y="185.33" class="st5" >1</text> </g> + <g id="shape38-90" > + <path d="M0 182.73 L0 209.73 L-83.48 209.73 L-83.48 182.73" class="st6"/> + </g> + </g> + <g id="group43-93" transform="translate(231.76,-148.74)" > + <title>Dynamic Connector.43</title> + <g id="shape44-94" transform="translate(-13.0912,-6.71177)"> + <title>end1_name</title> + </g> + <g id="shape45-96" transform="translate(5.09117,-6.71177)"> + <title>end1_mp</title> + <desc>1</desc> + <text x="5.5" y="185.33" class="st5" >1</text> </g> + <g id="shape46-99" transform="translate(-162.929,2.28823)"> + <title>end2_name</title> + </g> + <g id="shape47-101" transform="translate(-188.536,2.28823)"> + <title>end2_mp</title> + <desc>1</desc> + <text x="5.5" y="185.33" class="st5" >1</text> </g> + <g id="shape43-104" > + <path d="M0 196.23 L0 182.73 L-168.02 182.73 L-168.02 205.23" class="st6"/> + </g> + </g> + </g> +</svg> Added: trunk/rapc/doc/administration/figure/php_components.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/php_components.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/php_license.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/php_license.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/php_location.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/php_location.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/poedit_php_parser.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/poedit_php_parser.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/poedit_php_path.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/poedit_php_path.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgis_components.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgis_components.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgis_database_connection.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgis_database_connection.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgis_installation_complete.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgis_installation_complete.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgis_license.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgis_license.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgis_location.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgis_location.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgis_patience.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgis_patience.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgis_reboot.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgis_reboot.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_account_error.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_account_error.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_contrib_modules.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_contrib_modules.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_database_cluster.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_database_cluster.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_enable_postgis.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_enable_postgis.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_installation_complete.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_installation_complete.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_installation_notes.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_installation_notes.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_installation_options.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_installation_options.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_installation_ready.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_installation_ready.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_language_selection.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_language_selection.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_log_on_as_service.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_log_on_as_service.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_password.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_password.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_procedural_languages.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_procedural_languages.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_service_configuration.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_service_configuration.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_users.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_users.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postgresql_welcome.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postgresql_welcome.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postmaster_service.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postmaster_service.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postmaster_service_logon.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postmaster_service_logon.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/postmaster_service_properties.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/postmaster_service_properties.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/rapc_components.PNG =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/rapc_components.PNG ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/rapc_database_connection.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/rapc_database_connection.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/rapc_location.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/rapc_location.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/rapc_uml.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/rapc_uml.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/rapc_uml.vsd =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/rapc_uml.vsd ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/service_start.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/service_start.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/service_stop.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/service_stop.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/services_context_menu.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/services_context_menu.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/services_icon.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/services_icon.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/standalone_deployment.png =================================================================== (Binary files differ) Property changes on: trunk/rapc/doc/administration/figure/standalone_deployment.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/rapc/doc/administration/figure/standalone_deployment.svg =================================================================== --- trunk/rapc/doc/administration/figure/standalone_deployment.svg (rev 0) +++ trunk/rapc/doc/administration/figure/standalone_deployment.svg 2006-10-16 08:00:16 UTC (rev 5) @@ -0,0 +1,161 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Generated by Microsoft Visio 11.0, SVG Export, v1.0 standalone_deployment.svg Static Structure-1 --> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="2.35042in" + height="1.75667in" viewBox="0 0 169.23 126.48" xml:space="preserve" color-interpolation-filters="sRGB" class="st7"> + <title>uml</title> + <v:documentProperties v:langID="1031" v:metric="true" v:viewMarkup="false"/> + + <style type="text/css"> + <![CDATA[ + .st1 {fill:#c0c0c0;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24} + .st2 {fill:#ffffff;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24} + .st3 {fill:#000000;font-family:Arial;font-size:0.666664em;font-weight:bold} + .st4 {fill:none;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.72} + .st5 {fill:#000000;font-family:Arial;font-size:0.666664em} + .st6 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.48} + .st7 {fill:none;fill-rule:evenodd;font-size:12;overflow:visible;stroke-linecap:square;stroke-miterlimit:3} + ]]> + </style> + + <g v:mID="0" v:index="1" v:groupContext="foregroundPage"> + <v:userDefs> + <v:ud v:nameU="UMLDiagramType" v:val="VT0(0):26"/> + <v:ud v:nameU="UMLPageGUID" v:prompt="" v:val="VT14({CC435296-93B8-11D3-9080-00C04F3FD50D}):41"/> + </v:userDefs> + <title>Stand-alone deployment</title> + <v:pageProperties v:drawingScale="0.393701" v:pageScale="0.393701" v:drawingUnits="6" v:shadowOffsetX="9" + v:shadowOffsetY="-9"/> + <g id="group1-1" transform="translate(0.24,-0.24)" v:mID="1" v:groupContext="group"> + <v:userDefs> + <v:ud v:nameU="UMLShapeType" v:val="VT0(26):26"/> + <v:ud v:nameU="UMLObjectGUID" v:val="VT4({B456B6D0-40FE-413D-B13C-16E05100FD13})"/> + <v:ud v:nameU="UMLError" v:val="VT0(0):26"/> + <v:ud v:nameU="UMLPresOption1" v:val="VT0(3):26"/> + <v:ud v:nameU="UMLVersion" v:... [truncated message content] |
From: <mah...@us...> - 2006-10-16 08:10:55
|
Revision: 5 http://svn.sourceforge.net/rapc/?rev=5&view=rev Author: maher_karim Date: 2006-10-16 01:00:16 -0700 (Mon, 16 Oct 2006) Log Message: ----------- add doc Added Paths: ----------- trunk/rapc/doc/ trunk/rapc/doc/administration/ trunk/rapc/doc/administration/docbook.css trunk/rapc/doc/administration/figure/ trunk/rapc/doc/administration/figure/administrative_tools_icon.png trunk/rapc/doc/administration/figure/apache_information.png trunk/rapc/doc/administration/figure/apache_install.png trunk/rapc/doc/administration/figure/apache_license.png trunk/rapc/doc/administration/figure/apache_location.png trunk/rapc/doc/administration/figure/apache_readme.png trunk/rapc/doc/administration/figure/apache_setup_type.png trunk/rapc/doc/administration/figure/apache_wizard.png trunk/rapc/doc/administration/figure/client_server_deployment.BMP trunk/rapc/doc/administration/figure/client_server_deployment.png trunk/rapc/doc/administration/figure/client_server_deployment.svg trunk/rapc/doc/administration/figure/control_panel.png trunk/rapc/doc/administration/figure/dccss_components.PNG trunk/rapc/doc/administration/figure/dccss_database_connection.png trunk/rapc/doc/administration/figure/dccss_license.png trunk/rapc/doc/administration/figure/dccss_location.png trunk/rapc/doc/administration/figure/dccss_uml.png trunk/rapc/doc/administration/figure/dccss_uml.vsd trunk/rapc/doc/administration/figure/gis_data_review.png trunk/rapc/doc/administration/figure/internet_deployment.png trunk/rapc/doc/administration/figure/internet_deployment.svg trunk/rapc/doc/administration/figure/php_components.png trunk/rapc/doc/administration/figure/php_license.png trunk/rapc/doc/administration/figure/php_location.png trunk/rapc/doc/administration/figure/poedit_php_parser.png trunk/rapc/doc/administration/figure/poedit_php_path.png trunk/rapc/doc/administration/figure/postgis_components.png trunk/rapc/doc/administration/figure/postgis_database_connection.png trunk/rapc/doc/administration/figure/postgis_installation_complete.png trunk/rapc/doc/administration/figure/postgis_license.png trunk/rapc/doc/administration/figure/postgis_location.png trunk/rapc/doc/administration/figure/postgis_patience.png trunk/rapc/doc/administration/figure/postgis_reboot.png trunk/rapc/doc/administration/figure/postgresql_account_error.png trunk/rapc/doc/administration/figure/postgresql_contrib_modules.png trunk/rapc/doc/administration/figure/postgresql_database_cluster.png trunk/rapc/doc/administration/figure/postgresql_enable_postgis.png trunk/rapc/doc/administration/figure/postgresql_installation_complete.png trunk/rapc/doc/administration/figure/postgresql_installation_notes.png trunk/rapc/doc/administration/figure/postgresql_installation_options.png trunk/rapc/doc/administration/figure/postgresql_installation_ready.png trunk/rapc/doc/administration/figure/postgresql_language_selection.png trunk/rapc/doc/administration/figure/postgresql_log_on_as_service.png trunk/rapc/doc/administration/figure/postgresql_password.png trunk/rapc/doc/administration/figure/postgresql_procedural_languages.png trunk/rapc/doc/administration/figure/postgresql_service_configuration.png trunk/rapc/doc/administration/figure/postgresql_users.png trunk/rapc/doc/administration/figure/postgresql_welcome.png trunk/rapc/doc/administration/figure/postmaster_service.png trunk/rapc/doc/administration/figure/postmaster_service_logon.png trunk/rapc/doc/administration/figure/postmaster_service_properties.png trunk/rapc/doc/administration/figure/rapc_components.PNG trunk/rapc/doc/administration/figure/rapc_database_connection.png trunk/rapc/doc/administration/figure/rapc_location.png trunk/rapc/doc/administration/figure/rapc_uml.png trunk/rapc/doc/administration/figure/rapc_uml.vsd trunk/rapc/doc/administration/figure/service_start.png trunk/rapc/doc/administration/figure/service_stop.png trunk/rapc/doc/administration/figure/services_context_menu.png trunk/rapc/doc/administration/figure/services_icon.png trunk/rapc/doc/administration/figure/standalone_deployment.png trunk/rapc/doc/administration/figure/standalone_deployment.svg trunk/rapc/doc/administration/figure/uml_legend.png trunk/rapc/doc/administration/figure/windows_users.png trunk/rapc/doc/administration/figure/windows_users.svg trunk/rapc/doc/administration/images/ trunk/rapc/doc/administration/images/blank.png trunk/rapc/doc/administration/images/callouts/ trunk/rapc/doc/administration/images/callouts/1.png trunk/rapc/doc/administration/images/callouts/10.png trunk/rapc/doc/administration/images/callouts/11.png trunk/rapc/doc/administration/images/callouts/12.png trunk/rapc/doc/administration/images/callouts/13.png trunk/rapc/doc/administration/images/callouts/14.png trunk/rapc/doc/administration/images/callouts/15.png trunk/rapc/doc/administration/images/callouts/2.png trunk/rapc/doc/administration/images/callouts/3.png trunk/rapc/doc/administration/images/callouts/4.png trunk/rapc/doc/administration/images/callouts/5.png trunk/rapc/doc/administration/images/callouts/6.png trunk/rapc/doc/administration/images/callouts/7.png trunk/rapc/doc/administration/images/callouts/8.png trunk/rapc/doc/administration/images/callouts/9.png trunk/rapc/doc/administration/images/caution.png trunk/rapc/doc/administration/images/caution.svg trunk/rapc/doc/administration/images/draft.png trunk/rapc/doc/administration/images/example.png trunk/rapc/doc/administration/images/home.png trunk/rapc/doc/administration/images/home.svg trunk/rapc/doc/administration/images/important.png trunk/rapc/doc/administration/images/important.svg trunk/rapc/doc/administration/images/next.png trunk/rapc/doc/administration/images/next.svg trunk/rapc/doc/administration/images/note.png trunk/rapc/doc/administration/images/note.svg trunk/rapc/doc/administration/images/prev.png trunk/rapc/doc/administration/images/prev.svg trunk/rapc/doc/administration/images/tip.png trunk/rapc/doc/administration/images/tip.svg trunk/rapc/doc/administration/images/toc-blank.png trunk/rapc/doc/administration/images/toc-minus.png trunk/rapc/doc/administration/images/toc-plus.png trunk/rapc/doc/administration/images/up.png trunk/rapc/doc/administration/images/up.svg trunk/rapc/doc/administration/images/warning.svg trunk/rapc/doc/administration/rapc_administration_guide.xml trunk/rapc/doc/administration/toc.hhc trunk/rapc/doc/build.xml trunk/rapc/doc/dccss_docbook_html.xsl trunk/rapc/doc/dccss_docbook_htmlhelp.xsl trunk/rapc/doc/dccss_docbook_pdf.xsl trunk/rapc/doc/dcmms.xsl trunk/rapc/doc/development/ trunk/rapc/doc/docbook.css trunk/rapc/doc/rapc_docbook_html.xsl trunk/rapc/doc/rapc_docbook_htmlhelp.xsl trunk/rapc/doc/rapc_docbook_pdf.xsl trunk/rapc/doc/user/ trunk/rapc/doc/user/ar/ trunk/rapc/doc/user/en/ trunk/rapc/doc/user/en/docbook.css trunk/rapc/doc/user/en/figure/ trunk/rapc/doc/user/en/figure/error_page_cannot_be_displayed.png trunk/rapc/doc/user/en/figure/stock-tool-move.png trunk/rapc/doc/user/en/figure/stock_extended-help.png trunk/rapc/doc/user/en/figure/stock_zoom-in.png trunk/rapc/doc/user/en/figure/stock_zoom-out.png trunk/rapc/doc/user/en/images/ trunk/rapc/doc/user/en/images/blank.png trunk/rapc/doc/user/en/images/callouts/ trunk/rapc/doc/user/en/images/callouts/1.png trunk/rapc/doc/user/en/images/callouts/10.png trunk/rapc/doc/user/en/images/callouts/11.png trunk/rapc/doc/user/en/images/callouts/12.png trunk/rapc/doc/user/en/images/callouts/13.png trunk/rapc/doc/user/en/images/callouts/14.png trunk/rapc/doc/user/en/images/callouts/15.png trunk/rapc/doc/user/en/images/callouts/2.png trunk/rapc/doc/user/en/images/callouts/3.png trunk/rapc/doc/user/en/images/callouts/4.png trunk/rapc/doc/user/en/images/callouts/5.png trunk/rapc/doc/user/en/images/callouts/6.png trunk/rapc/doc/user/en/images/callouts/7.png trunk/rapc/doc/user/en/images/callouts/8.png trunk/rapc/doc/user/en/images/callouts/9.png trunk/rapc/doc/user/en/images/caution.png trunk/rapc/doc/user/en/images/caution.svg trunk/rapc/doc/user/en/images/draft.png trunk/rapc/doc/user/en/images/example.png trunk/rapc/doc/user/en/images/home.png trunk/rapc/doc/user/en/images/home.svg trunk/rapc/doc/user/en/images/important.png trunk/rapc/doc/user/en/images/important.svg trunk/rapc/doc/user/en/images/next.png trunk/rapc/doc/user/en/images/next.svg trunk/rapc/doc/user/en/images/note.png trunk/rapc/doc/user/en/images/note.svg trunk/rapc/doc/user/en/images/prev.png trunk/rapc/doc/user/en/images/prev.svg trunk/rapc/doc/user/en/images/tip.png trunk/rapc/doc/user/en/images/tip.svg trunk/rapc/doc/user/en/images/toc-blank.png trunk/rapc/doc/user/en/images/toc-minus.png trunk/rapc/doc/user/en/images/toc-plus.png trunk/rapc/doc/user/en/images/up.png trunk/rapc/doc/user/en/images/up.svg trunk/rapc/doc/user/en/images/warning.svg trunk/rapc/doc/user/en/rapc_user_guide.xml trunk/rapc/doc/user/en/toc.hhc This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-10-16 07:57:48
|
Revision: 4 http://svn.sourceforge.net/rapc/?rev=4&view=rev Author: maher_karim Date: 2006-10-16 00:52:30 -0700 (Mon, 16 Oct 2006) Log Message: ----------- Added Paths: ----------- trunk/rapc/images/ trunk/rapc/images/about.png trunk/rapc/images/administration-32.png trunk/rapc/images/bill_loader.PNG trunk/rapc/images/bullet_next.gif trunk/rapc/images/buttons/ trunk/rapc/images/buttons/back_off.gif trunk/rapc/images/buttons/back_on.gif trunk/rapc/images/buttons/coords_off.gif trunk/rapc/images/buttons/coords_on.gif trunk/rapc/images/buttons/digitize_off.gif trunk/rapc/images/buttons/digitize_on.gif trunk/rapc/images/buttons/download_off.gif trunk/rapc/images/buttons/download_on.gif trunk/rapc/images/buttons/fwd_off.gif trunk/rapc/images/buttons/home_off.gif trunk/rapc/images/buttons/home_on.gif trunk/rapc/images/buttons/identify_off.gif trunk/rapc/images/buttons/identify_on.gif trunk/rapc/images/buttons/measure_off.gif trunk/rapc/images/buttons/measure_on.gif trunk/rapc/images/buttons/pan/ trunk/rapc/images/buttons/pan/pane_off.gif trunk/rapc/images/buttons/pan/pann_off.gif trunk/rapc/images/buttons/pan/pannw_off.gif trunk/rapc/images/buttons/pan/pans_off.gif trunk/rapc/images/buttons/pan/panw_off.gif trunk/rapc/images/buttons/pan_e.gif trunk/rapc/images/buttons/pan_n.gif trunk/rapc/images/buttons/pan_off.gif trunk/rapc/images/buttons/pan_on.gif trunk/rapc/images/buttons/pan_s.gif trunk/rapc/images/buttons/pan_w.gif trunk/rapc/images/buttons/print_off.gif trunk/rapc/images/buttons/print_on.gif trunk/rapc/images/buttons/reload_off.gif trunk/rapc/images/buttons/reload_on.gif trunk/rapc/images/buttons/resize_off.gif trunk/rapc/images/buttons/select_off.gif trunk/rapc/images/buttons/select_on.gif trunk/rapc/images/buttons/separatorh.gif trunk/rapc/images/buttons/separatorv.gif trunk/rapc/images/buttons/space.gif trunk/rapc/images/buttons/zoomin_off.gif trunk/rapc/images/buttons/zoomin_off0.gif trunk/rapc/images/buttons/zoomin_on.gif trunk/rapc/images/buttons/zoomin_on.gif_ trunk/rapc/images/buttons/zoomminus.gif trunk/rapc/images/buttons/zoomminus0.gif trunk/rapc/images/buttons/zoomout_off.gif trunk/rapc/images/buttons/zoomout_off_0.gif trunk/rapc/images/buttons/zoomout_on.gif trunk/rapc/images/buttons/zoomplus.gif trunk/rapc/images/buttons/zoomplus0.gif trunk/rapc/images/config-language.png trunk/rapc/images/dccss-install.ico trunk/rapc/images/dccss-uninstall.ico trunk/rapc/images/dccss.ico trunk/rapc/images/dccss_icon_16.png trunk/rapc/images/dccss_small.png trunk/rapc/images/documents.png trunk/rapc/images/empty.gif trunk/rapc/images/gnome-starthere.png trunk/rapc/images/gtz.JPG trunk/rapc/images/icon_collapse.gif trunk/rapc/images/icon_draw.gif trunk/rapc/images/icon_expand.gif trunk/rapc/images/icon_eye.gif trunk/rapc/images/icon_find.gif trunk/rapc/images/icon_info.gif trunk/rapc/images/icon_info2.gif trunk/rapc/images/icon_info_av.gif trunk/rapc/images/icon_landmark.png trunk/rapc/images/icon_measure.gif trunk/rapc/images/icon_minimize.gif trunk/rapc/images/icon_pan.gif trunk/rapc/images/icon_pdf.gif trunk/rapc/images/icon_print.gif trunk/rapc/images/icon_recentre.gif trunk/rapc/images/icon_redraw.gif trunk/rapc/images/icon_remove.gif trunk/rapc/images/icon_track.gif trunk/rapc/images/icon_update.gif trunk/rapc/images/icon_zoomin.gif trunk/rapc/images/icon_zoomin.png trunk/rapc/images/icon_zoomout.gif trunk/rapc/images/info.gif trunk/rapc/images/installer-header.bmp trunk/rapc/images/java_off.gif trunk/rapc/images/java_on.gif trunk/rapc/images/jordan.PNG trunk/rapc/images/jordan.jpg trunk/rapc/images/layer_node.gif trunk/rapc/images/mpwh.PNG trunk/rapc/images/ochain.gif trunk/rapc/images/oempty.gif trunk/rapc/images/ominus.gif trunk/rapc/images/ominusEnd.gif trunk/rapc/images/ominusStart.gif trunk/rapc/images/onode.gif trunk/rapc/images/onodeEnd.gif trunk/rapc/images/oplus.gif trunk/rapc/images/oplusEnd.gif trunk/rapc/images/oplusStart.gif trunk/rapc/images/php-power-white.gif trunk/rapc/images/poweredbymysql-88.png trunk/rapc/images/remove_temporary_files.png trunk/rapc/images/shapefile_dumper.png trunk/rapc/images/spinner.gif trunk/rapc/images/stock-tool-move.png trunk/rapc/images/stock_exit-16.png trunk/rapc/images/stock_extended-help.png trunk/rapc/images/stock_help-16.png trunk/rapc/images/stock_refresh.png trunk/rapc/images/stock_search.png trunk/rapc/images/stock_zoom-in.png trunk/rapc/images/stock_zoom-out.png trunk/rapc/images/thmIdOn13x13.gif trunk/rapc/images/tree_layer.gif trunk/rapc/images/tree_layers.gif trunk/rapc/images/tree_server.gif trunk/rapc/images/workorder.png trunk/rapc/images/workswithmysql-88.png trunk/rapc/images/zoom_to_landmark.png This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-10-16 07:35:15
|
Revision: 3 http://svn.sourceforge.net/rapc/?rev=3&view=rev Author: maher_karim Date: 2006-10-16 00:31:41 -0700 (Mon, 16 Oct 2006) Log Message: ----------- Added Paths: ----------- trunk/rapc/ trunk/rapc/AUTHORS trunk/rapc/COPYING trunk/rapc/INSTALL trunk/rapc/NEWS trunk/rapc/about.php trunk/rapc/admin/ trunk/rapc/admin/setup.php trunk/rapc/admin/shapefile_dumper.php trunk/rapc/admin/shapefile_loader.php trunk/rapc/bin/ trunk/rapc/bin/README.txt trunk/rapc/changelog trunk/rapc/conf/ trunk/rapc/conf/dataobject.ini trunk/rapc/conf/dataobject.ini.default trunk/rapc/conf/dccssconfig.php trunk/rapc/conf/dccssconfig.php.default trunk/rapc/conf/identifyplugin.ini trunk/rapc/conf/identifyplugin.ini.default trunk/rapc/conf/php.ini trunk/rapc/conf/rapc_ar.map trunk/rapc/conf/rapc_en.jpg trunk/rapc/conf/rapc_en.map trunk/rapc/conf/rapc_en.sym trunk/rapc/conf/sample_ar.map trunk/rapc/conf/sample_en.map trunk/rapc/data/ trunk/rapc/data/README.txt trunk/rapc/etc/ trunk/rapc/etc/RAPC homepage.url trunk/rapc/etc/RAPC.url trunk/rapc/etc/fonts.txt trunk/rapc/etc/rapc_flyer.sla trunk/rapc/etc/symbols.sym trunk/rapc/include/ trunk/rapc/include/dataobject/ trunk/rapc/include/dataobject/Public_annualfees.php trunk/rapc/include/dataobject/Public_center.php trunk/rapc/include/dataobject/Public_district.php trunk/rapc/include/dataobject/Public_facecount.php trunk/rapc/include/dataobject/Public_geometry_columns.php trunk/rapc/include/dataobject/Public_history.php trunk/rapc/include/dataobject/Public_insurance.php trunk/rapc/include/dataobject/Public_language.php trunk/rapc/include/dataobject/Public_ownership.php trunk/rapc/include/dataobject/Public_panel.php trunk/rapc/include/dataobject/Public_panelcatagory.php trunk/rapc/include/dataobject/Public_paneldimension.php trunk/rapc/include/dataobject/Public_paneltype.php trunk/rapc/include/dataobject/Public_road.php trunk/rapc/include/dataobject/Public_routedirection.php trunk/rapc/include/dataobject/Public_routetype.php trunk/rapc/include/dataobject/Public_spatial_ref_sys.php trunk/rapc/include/dataobject/Public_translation.php trunk/rapc/include/dataobject/Public_typedimensionfees.php trunk/rapc/include/dataobject/Public_usefees.php trunk/rapc/include/dataobject/Public_yesno.php trunk/rapc/include/dataobject/rapc.ini trunk/rapc/include/dataobject/rapc.links.ini trunk/rapc/include/dccss.css trunk/rapc/include/dccsspage.php trunk/rapc/include/dccsspostgis.php trunk/rapc/include/dcmmap.php trunk/rapc/include/dcmmaputil.php trunk/rapc/include/dcmmspear.php trunk/rapc/include/dcmpostgis.php trunk/rapc/include/header.php trunk/rapc/include/i18n.php trunk/rapc/include/ltr.css trunk/rapc/include/print.css trunk/rapc/include/rtl.css trunk/rapc/index.html trunk/rapc/index.php trunk/rapc/locale/ trunk/rapc/locale/ar/ trunk/rapc/locale/ar/LC_MESSAGES/ trunk/rapc/locale/ar/LC_MESSAGES/rapc.po trunk/rapc/locale/en/ trunk/rapc/locale/en/LC_MESSAGES/ trunk/rapc/locale/en/LC_MESSAGES/rapc.po trunk/rapc/logon.php trunk/rapc/map.php trunk/rapc/panelinstallation_report.php trunk/rapc/panelpage.php trunk/rapc/paneltypes_report.php trunk/rapc/plugin/ trunk/rapc/plugin/identifyplugin.php trunk/rapc/plugin/imageidentifyplugin.php trunk/rapc/postgis.ini trunk/rapc/print.php trunk/rapc/query.php trunk/rapc/rapc.nsi trunk/rapc/readme trunk/rapc/reports.php trunk/rapc/script/ trunk/rapc/script/ReplaceInFile.nsh trunk/rapc/script/StrReplace.nsh trunk/rapc/script/create_dccss_db.bat trunk/rapc/script/create_rapc_ddl.sql trunk/rapc/script/create_views.sql trunk/rapc/script/drop_views.sql trunk/rapc/script/remove_temporary_files.bat trunk/rapc/search.php This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-10-16 07:01:41
|
Revision: 2 http://svn.sourceforge.net/rapc/?rev=2&view=rev Author: maher_karim Date: 2006-10-16 00:01:20 -0700 (Mon, 16 Oct 2006) Log Message: ----------- t Added Paths: ----------- trunk/admin/ trunk/admin/setup.php trunk/admin/shapefile_dumper.php trunk/admin/shapefile_loader.php This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-10-16 07:01:41
|
Revision: 2 http://svn.sourceforge.net/rapc/?rev=2&view=rev Author: maher_karim Date: 2006-10-16 00:01:20 -0700 (Mon, 16 Oct 2006) Log Message: ----------- t Added Paths: ----------- trunk/admin/ trunk/admin/setup.php trunk/admin/shapefile_dumper.php trunk/admin/shapefile_loader.php Added: trunk/admin/setup.php =================================================================== --- trunk/admin/setup.php (rev 0) +++ trunk/admin/setup.php 2006-10-16 07:01:20 UTC (rev 2) @@ -0,0 +1,133 @@ +<?php +/* DCMMS -- DC Maintenance Management System + * + * setup.php - Information on the DCMMS configuration + * + * Copyright (C) 2004, 2005 DORSCH Consult + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +require_once("../include/dcmmspage.php"); +require_once("../include/dcmpostgis.php"); +require_once("../include/dcmmspear.php"); +require_once("../plugin/identifyplugin.php"); +require_once("HTML/QuickForm.php"); +require_once("HTML/QuickForm/select.php"); +require_once('HTML/Table.php'); +require_once("DB/DataObject/FormBuilder.php"); +require_once('PEAR.php'); +require_once('PEAR/Registry.php'); + +$options = &PEAR::getStaticProperty("DB_DataObject", "options"); +$config = parse_ini_file("../conf/dataobject.ini", true); +$options = $config["DB_DataObject"]; +$options["database"] = "pgsql://".$_SESSION["UserName"].":". + $_SESSION["Password"]."@"."localhost/".$_SESSION["strDataBase"]; +$dbconfig = parse_ini_file("../include/dataobject/dcmms.ini", true); + +$dcmPage = new DcmmsAdminPage(_("DCMMS Setup")); +$dcmPage->setIconImage("serviceconf-48.png"); +$dcmPage->setPageName(basename(__FILE__)); + +/** + * Add missing translations + */ +$strDelete = "delete from Translation where Translation is null"; +$dcmPage->postgis->db->query($strDelete); +$strInsert= "insert into Translation(Language, Term, Translation) select ". + "Language, Term, '' from MissingTranslation"; +$dcmPage->postgis->db->query($strInsert); +if(DB::isError($dcmPage->postgis->db)) { + $dcmPage->add("<p class=\"important\">". + _("Adding the missing translations failed.")."</p>"); +} + +$form = new HTML_QuickForm("TranslationForm"); +$form->setRequiredNote("<span style=".quote("font-size:80%; color:#ff0000;"). + ">*</span><span style=".quote("font-size:80%;")."> ". + _("denotes required field")."</span>"); +/** + * Show dcmconfig.php languages in table. + */ +$dcmPage->add("<p>"._("Languages in include/dcmconfig.php:")."</p>"); +$objTable = new HTML_Table(NULL); +$objTable->setAutoGrow(true); +$objTable->setCellContents(0, 0, _("ISO Code"), "TH"); +$i = 0; +foreach($_SESSION["arrLanguages"] as $strLanguage) { + $i++; + $objTable->setCellContents($i, 0, $strLanguage); +} +$objTable->altRowAttributes(1, array("class"=>"background_two"), + array("class"=>"background_one")); + +$dcmPage->add($objTable->toHtml()); +/** + * Show database languages in paged table. + */ +$dcmPage->add("<p>".sprintf( + _("Languages in the Language table of the %s database."), + $_SESSION["strDataBase"])."</p>"); +$objDbTable = new DbTable($dcmPage->postgis->db, + "select IsoCode, Description from Language"); +$objDbTable->addRows(); +$objDbTable->setCellContents(0, 0, _("ISO Code"), "TH"); +$objDbTable->setCellContents(0, 1, _("Name"), "TH"); + +$dcmPage->add($objDbTable->toHtml()); + +/** + * Information about the plug-in configuration. + */ +$dcmPage->add('<h2>'._('Plug-Ins').'</h2>'); +$dcmPage->add('<h3>'._('Identify Plug-Ins').'</h3>'); +$arrConfiguration = parse_ini_file('../conf/identifyplugin.ini', true); +if(isset($arrConfiguration['IdentifyPlugin'])&& + (is_array($arrConfiguration['IdentifyPlugin']))) { + $numI = 1; + $arrPluginConfig = $arrConfiguration['IdentifyPlugin']; + while(isset($arrPluginConfig["Plugin$numI"])&& + isset($arrPluginConfig["Layer$numI"])) { + $objPlugin = IdentifyPlugin::factory($arrPluginConfig["Plugin$numI"], + $arrConfiguration[$arrPluginConfig["Plugin$numI"]]); + $dcmPage->add('<p>'.$objPlugin->getAbout().'</p>'); + $numI++; + } +} + +/** + * PEAR packages. + * \todo Make OS- and path-independent. + */ +$dcmPage->add('<h2>'._('PEAR Packages').'</h2>'); +$pearregistry = new PEAR_Registry('c:\windows\php\pear'); +$arrPackages = $pearregistry->listPackages(); +$objPackageTable = new HTML_Table(NULL); +$objPackageTable->setAutoGrow(true); +$objPackageTable->setCellContents(0, 0, _('Package'), 'TH'); +$objPackageTable->setCellContents(0, 1, _('Version'), 'TH'); +$intRow = 1; +foreach($arrPackages as $strPackage) { + $objPackageTable->setCellContents($intRow, 0, $strPackage); + $strVersion = $pearregistry->packageInfo($strPackage, 'version'); + $objPackageTable->setCellContents($intRow, 1, $strVersion); + $intRow += 1; +} +$objPackageTable->altRowAttributes(1, array("class"=>"background_two"), + array("class"=>"background_one")); +$dcmPage->add($objPackageTable->toHtml()); +$dcmPage->setCvsDate("$Date: 2005-08-09 11:18:39 +0200 (Tue, 09 Aug 2005) $Empty"); +echo($dcmPage->toHtml()); ?> Added: trunk/admin/shapefile_dumper.php =================================================================== --- trunk/admin/shapefile_dumper.php (rev 0) +++ trunk/admin/shapefile_dumper.php 2006-10-16 07:01:20 UTC (rev 2) @@ -0,0 +1,162 @@ +<?php + /* CSS -- DC Comprehensive Subscribers Survey + * + * shapefile_dumper.php - export shapefiles from the DCCSS database + * + * Copyright (C) 2005 DORSCH Consult + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +$strPathInDccss= '../'; +@include("../include/header.php"); +include("../include/dcmpostgis.php"); +$DccssPage = new DccssPage(basename(__FILE__)); +$DccssPage->strPathInDccss= '../'; +$DccssPage->header("Shapefile dumper", TRUE, "", "shapefile_dumper.png"); +$strMessage = ""; + + +$boolShowForm = true; +/** + * Check availability of commands + */ +$_SESSION['strZipCommand'] = trim($_SESSION['strZipCommand']); +if(!file_exists($_SESSION["strZipCommand"])) { + echo('<p class="important">'._('Error: Zip program is missing.').'</p>'); + $boolShowForm = false; +} +/** + * \todo Store full pgsql2shp path to ensure OS independence. + */ +$_SESSION['strPgClientBinDirectory'] = trim($_SESSION['strPgClientBinDirectory']); +if(!file_exists($_SESSION['strPgClientBinDirectory'].'pgsql2shp.exe')) { + echo('<p class="important">'._('Error: pgsql2shp program is missing.').'</p>'); + $boolShowForm = false; +} +if($boolShowForm) { + ?> + <p><?= _("Download shapefiles from geodatabase."); ?></p> <?php + if((array_key_exists("TableName", $_POST))&&($_POST["TableName"] != "0") + &&(is_numeric($_POST["TableName"]))) { + /** + * Obtain table and geometry column + */ + $strQuery = "select f_table_name, f_geometry_column from ". + "geometry_columns where oid=".$_POST["TableName"]; + $blnSuccess = false; + $objResult = pg_query($strQuery); + if($objResult) { + $arrRow = pg_fetch_row($objResult); + $strTable = $arrRow[0]; + $strColumn = $arrRow[1]; + /** + * Update translations if necessary. + */ + $arrTranslationPostfix = array('name'); + if(isset($_POST["update_translation"])) { + $arrMeta = pg_meta_data($rdbms, $strTable); + if($arrMeta) { + $strLanguageQuery = "select IsoCode from Language"; + $objLanguageResult = pg_query($strLanguageQuery); + if($objLanguageResult) { + while($arrRow = pg_fetch_row($objLanguageResult)) { + foreach($arrTranslationPostfix as $strPostfix) { + if(array_key_exists($arrRow[0].$strPostfix, $arrMeta)) { + $strUpdate = "update $strTable set ".$arrRow[0]. + "$strPostfix = Translation.Translation from Translation". + " where Translation.Language = '".$arrRow[0]. + "' and Translation.Term = $strTable.$strPostfix"; + // echo($strUpdate); + $objUpdateResult = pg_query($strUpdate); + if(!$objUpdateResult) { + $strMessage = $strMessage.sprintf( + "Failed to update translation '%s'.", $arrRow[0]. + $strPostfix); + } + } + } + } + } + } + } + ?> + <form><textarea style= + "height: 15em; width: 95%; overflow:scroll"><?php + $strCommand = "set PGCLIENTENCODING=".$_SESSION["strShapefileEncoding"]. + " & \"".$_SESSION["strPgClientBinDirectory"]."pgsql2shp.exe\"". + " -f ".$_SESSION["strMsTmpDirectory"].$strTable." -g ".$strColumn." ".$_SESSION["strDataBase"]." ". + $strTable." -u ".$_SESSION["UserName"]." -P ". + $_SESSION["Password"].""; + echo($strCommand); + $strResult = system($strCommand, $intReturnValue); + $blnSuccess = false; + if($intReturnValue == 1) { + $strCommand = "@echo off & \"".$_SESSION["strZipCommand"]. + "\" -j -9 -m \"". + $_SESSION["strMsTmpDirectory"]. + $strTable.".zip\" \"".$_SESSION["strMsTmpDirectory"]. + $strTable.".shp\" \"".$_SESSION["strMsTmpDirectory"]. + $strTable.".shx\" \"".$_SESSION["strMsTmpDirectory"]. + $strTable.".dbf\""; + //echo($strCommand); + $strResult = system($strCommand, $intReturnValue); + //echo($intReturnValue); + if($intReturnValue == 0) { + $blnSuccess = true; + } + } ?> + </textarea></form><br clear="all" /> <?php + if($blnSuccess) { + ?> + <p><?= _("Download ") ?><a href="/ms_tmp/<?= + $strTable ?>.zip"><?= $strTable ?>.zip</a>.</p><?php + } else { + $strMessage = $strMessage.sprintf( + _("Failed to dump table '%s' to a shapefile."), + $strTable); + ?> + <p class="important"><?= $strMessage ?></p><?php + } + } + } ?> + <form action="shapefile_dumper.php" method="POST"> + <p><?= _("Please select the table which you want to download.") ?> + <input type="hidden" name="MAX_FILE_SIZE" value="10000000" /> + <table> <?php + $strQuery = "select oid,f_table_name||'.'||f_geometry_column from ". + "geometry_columns order by f_table_name, f_geometry_column"; + $result = pg_query($strQuery); + $arrResult = array(); + + if($result) { + $arrResult = array(); + while($arrRow = pg_fetch_row($result)) { + array_push($arrResult, $arrRow); + } + $DccssPage->printSelect("TableName", $arrResult, array(), $strHelp= + _("The table for download."), false, "", true, _("Table Name:")); + $DccssPage->printCheckbox("update_translation", array(), + _("Select this if fields like 'frlocation' or 'ardescript' should be updated."), + "Update Translations"); ?> + </table> + <input title="<?= + _("Press the button after selecting the table.") ?>" + type="submit" value="<?= _("Dump File") ?>"> <?php + } ?> + </form> <?php +} +$DccssPage->footer("$Date: 2005-09-21 13:53:39 +0200 (الاربعاء, 21 أيلول 2005) $Empty"); ?> + Added: trunk/admin/shapefile_loader.php =================================================================== --- trunk/admin/shapefile_loader.php (rev 0) +++ trunk/admin/shapefile_loader.php 2006-10-16 07:01:20 UTC (rev 2) @@ -0,0 +1,289 @@ +<?php +/* CSS -- DC Comprehensive Subscribers Survey + *RAPC -- Road Advertisement Panel Control + * shapefile_loader.php - import shapefile to the database + * + * Copyright (C) 2005 DORSCH Consult + * Copyright (C) 2006 DC Water and Environment + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +/** + * \todo Check create_views.sql/drop_views.sql + */ +$strPathInDccss = '../'; +include("../include/header.php"); +include("../include/dcmpostgis.php"); +$DccssPage = new DccssPage(basename(__FILE__)); +$DccssPage->strPathInDccss = '../'; +$DccssPage->header(_("Shapefile Loader"), TRUE, "", "shapefile_loader.png"); +$strMessage = ""; +$boolShowForm = true; + +/** + * Check availability of commands + */ +/** + * \todo Store full shp2pgsql path to ensure OS independence. + */ + $_SESSION['strPgClientBinDirectory'] = + trim($_SESSION['strPgClientBinDirectory']); +if(!file_exists($_SESSION['strPgClientBinDirectory'].'shp2pgsql.exe')) { + echo('<p class="important">'. + sprintf(_('Error: shp2pgsql program (%sshp2pgsql.exe)is missing.'), + $_SESSION['strPgClientBinDirectory']).'</p>'); + $boolShowForm = false; +} +/** + * Determine maximum file size and memory usage. + */ +$intMaxMemory = (int) str_replace('M', '000000', get_cfg_var('memory_limit')); +$intMaxFileSize = min((int) str_replace('M', '000000', + get_cfg_var('upload_max_filesize')), (int) str_replace('M', '000000', + get_cfg_var('post_max_size'))); +if($boolShowForm) { + //settings + $pagename="shapefile_loader.php"; + $dbname = $_SESSION["strDataBase"]." user=".$_SESSION["UserName"]. + " password=".$_SESSION["Password"]." host=localhost"; + //$shpdir = str_replace("\\","",tempnam("/tmp/", "shp")); + $shpdir = tempnam("c:\\tmp\\", "shp"); + @unlink($shpdir); + mkdir($shpdir, 0700); + if((isset($_FILES))&&(array_key_exists("userfile", $_FILES))&& + (move_uploaded_file($_FILES["userfile"]["tmp_name"], + $shpdir.$_FILES["userfile"]["name"]))) { + $blnSuccess = true; + /** + * Drop and rebuild the views if necessary + */ + $arrRebuildViews = array("landmark","grid","route","collect"); + printf(_("Received file '%s'."), $_FILES["userfile"]["name"]); + echo("...<br>"); + //check for zipfile + echo(_("Unzipping")." ...<br><pre>\n"); + + $zip = zip_open($shpdir.$_FILES["userfile"]["name"]); + + if($zip){ + while ($zip_entry = zip_read($zip)) { + echo( _("Name: ") . zip_entry_name($zip_entry)." ". + _("Size: ") . zip_entry_filesize($zip_entry)); + flush(); + ob_flush(); + if (zip_entry_open($zip, $zip_entry, "r")) { + $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); + if (!$fp = fopen($shpdir."/".zip_entry_name($zip_entry), 'a')) { + print "Cannot open file ($shpdir."/".zip_entry_name($zip_entry))"; + exit; + } + if (!fwrite($fp, $buf)) { + echo("Cannot write to file '$shpdir\\". + zip_entry_name($zip_entry)."'"); + exit; + } + zip_entry_close($zip_entry); + } + echo "\n"; + } + zip_close($zip); + } else { + echo(_("Uploaded file is not a zipfile.")); + $blnSuccess = false; + } ?> + </pre> <?php + $dir = $shpdir; + + $dirhandle = opendir($shpdir); + while(($filename = readdir($dirhandle))!=false) { + if(strstr(strtolower($filename),".shp")==".shp") { + printf(_("Loading '%s'"), $filename); + echo(" ...<br>"); + $strFileName = str_replace( ".shp", "", strtolower($filename)); + $strTableName = $strFileName; + if($_POST["Table"] != "") { + $strTableName = $_POST["Table"]; + } + $boolRebuildViews = false; + foreach($arrRebuildViews as $strRebuild) { + if(strtolower($strTableName) == $strRebuild) { + $boolRebuildViews = true; + } + } + $conn = pg_connect("dbname=$dbname"); + if(!$conn) { + echo "Could not connect to the $dbname database.\n"; + exit; + } + if($boolRebuildViews) { + echo("<p>"._("Dropping database views.")."</p>"); + $arrDropViews = file("../script/drop_views.sql"); + $strQuery = ""; + foreach($arrDropViews as $numLine => $strLine) { + /** + * Skip comments. + */ + if((substr($strLine, 0, 2) != "--")&&(trim($strLine) != "")) { + echo($strLine); + pg_query($strLine); + } + } + } + + $arrCommands = array("set PGCLIENTENCODING=". + $_SESSION["strShapefileEncoding"]."& \"".$_SESSION["strPgClientBinDirectory"]. + "shp2pgsql.exe\" -d \"$shpdir\\$filename\" -D $strTableName ". + $_SESSION["strDataBase"]. + " > \"$shpdir\\$filename.sql\" 2>\"$shpdir\\error.log\"" => 0, + "set PGCLIENTENCODING=". + $_SESSION["strShapefileEncoding"]."& set PGPASSWORD=". + $_SESSION["Password"]. + "& \"".$_SESSION["strPgClientBinDirectory"]."psql.exe\" -d ". + $_SESSION["strDataBase"]." -U ".$_SESSION["UserName"]. + " -h localhost -f \"$shpdir\\$filename.sql\" ". + "2> \"$shpdir\\error.log\"" => 0); + + foreach($arrCommands as $strCommand => $intExpectedReturnValue) { + echo("<pre>".htmlspecialchars($strCommand)."</pre>\n"); + flush(); + ob_flush(); + echo('<h2>'._('Output').'</h2>'); + /** + * Check file size against memory limit. + * \todo Check shapefile size against memory limit. + */ + if(file_exists("$shpdir\\$filename.sql")&& + filesize("$shpdir\\$filename.sql") > $intMaxMemory) { + echo('<p class="important">'. + _('Warning: Loader might exceed memory limit.').'</p>'); + } + echo('<form><textarea style= + "height: 8em; width: 95%; overflow:scroll">'); + system($strCommand, $intReturnValue); + echo('</textarea></form>'); + echo('<h2>'._('Errors').'</h2>'); + echo('<form><textarea style= + "height: 8em; width: 95%; overflow:scroll">'); + readfile("$shpdir\\error.log"); + echo('</textarea></form>'); + + if($intReturnValue != $intExpectedReturnValue) { + echo("<p class=\"important\">". + _("Failed to load shapefile.")."</p>"); + $blnSuccess = false; + break; + } + } + if($blnSuccess) { + if($boolRebuildViews) { + echo("<p>"._("Creating database views.")."</p>"); + $arrCreateViews = file("../script/create_views.sql"); + foreach($arrCreateViews as $numLine => $strLine) { + /** + * Skip comments. + */ + if((substr($strLine, 0, 2) != "--")&&(trim($strLine) != "")) { + $strQuery = $strQuery.$strLine; + } + if(strpos($strQuery, ";")) { + // echo($strQuery); + pg_query($strQuery); + $strQuery = ""; + } + } + } + /** + * Create spatial index. + */ + @pg_query("drop index ".$strTableName."_geom_idx"); + @pg_query("drop index ".$strTableName."_gid_idx"); + pg_query("create index $strTableName". + "_geom_idx on $strTableName using GIST(the_geom GIST_GEOMETRY_OPS)"); + pg_query("create index $strTableName"."_gid_idx on $strTableName (gid)"); + pg_query("vacuum analyze $strTableName"); + pg_query("grant all on $strTableName to postgres"); + pg_query("grant all on $strTableName to group ".$_SESSION["strDataBase"]."user"); + $DccssPage->writelog("Sucssessfully loaded '".$strTableName. + "' to the database."); + /** + * Update Translation table. + */ + $arrTranslationPostfix = array('name'); + if(isset($_POST["update_translation"])) { + $arrMeta = pg_meta_data($rdbms, $strTableName); + if($arrMeta) { + $strLanguageQuery = "select IsoCode from Language"; + $objLanguageResult = pg_query($strLanguageQuery); + if($objLanguageResult) { + while($arrRow = pg_fetch_row($objLanguageResult)) { + foreach($arrTranslationPostfix as $strPostfix) { + if(array_key_exists($arrRow[0].$strPostfix, $arrMeta)) { + $arrSql = array("update Translation set Translation=".$arrRow[0]. + "$strPostfix from ".$strTableName. + " where Translation.Language = '".$arrRow[0]. + "' and Translation.Term = $strTableName.$strPostfix", + "insert into Translation (select distinct '".$arrRow[0]. + "', $strPostfix, ".$arrRow[0]. + "$strPostfix from $strTableName left outer join ". + "Translation on Translation.Language = '".$arrRow[0]. + "' and Translation.Term = $strTableName.$strPostfix". + " where Translation.Term is null and $strTableName.$strPostfix + is not null and $strTableName.$arrRow[0]$strPostfix is not null)"); + foreach($arrSql as $strQuery) { + //echo($strQuery); + $objUpdateResult = pg_query($strQuery); + if(!$objUpdateResult) { + $strMessage = $strMessage.sprintf( + "Failed to update translation '%s'.", $arrRow[0]. + $strPostfix); + } + } + } + } + } + } + } + } + } + } + } + /** + * \todo Cleanup files + */ + //system("rm -Rf $shpdir"); ?> + <p><?= _("Done.") ?></p> <?php + } ?> + <h2><?= sprintf(_("Load shapefiles to %s"), $_SESSION["strDataBase"]) ?></h2> + <p class="important"><?= $strMessage ?></p> + <form enctype="multipart/form-data" action=<?= $pagename ?> method="POST"> + <p><?= _('Please zip your shapefiles before loading. Upload the zipfile.'). + sprintf(_('The maximum zipfile size is %d MB.'), $intMaxFileSize/1000000) + ?></p> + <table summary="file upload form"> + <tr><td class="label"> + <input type="hidden" name="MAX_FILE_SIZE" value="<?= $intMaxFileSize ?>"> + <?= _("Load this file:")?></td><td class="input"><input name="userfile" + type="file"></td></tr> <?php + $DccssPage->printTextInput("Table", $_POST, "", + _("The name of the geodatabase table to which the data will be loaded.")); + $DccssPage->printCheckbox("update_translation", array(), + _("Select this if the translation table should be updated."), + _("Update Translations")); + ?></table> + <input type="submit" value=<?= quote(_("Load file")) ?> /> + </form> <?php +} +$DccssPage->footer("$Date: 2006-03-19 09:31:10 +0200 (الاحد, 19 آذار 2006) $Empty"); ?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-10-16 05:18:43
|
Revision: 1 http://svn.sourceforge.net/rapc/?rev=1&view=rev Author: maher_karim Date: 2006-10-15 22:18:13 -0700 (Sun, 15 Oct 2006) Log Message: ----------- Created folder remotely Added Paths: ----------- trunk/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mah...@us...> - 2006-10-16 05:18:43
|
Revision: 1 http://svn.sourceforge.net/rapc/?rev=1&view=rev Author: maher_karim Date: 2006-10-15 22:18:13 -0700 (Sun, 15 Oct 2006) Log Message: ----------- Created folder remotely Added Paths: ----------- trunk/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |