diff options
-rw-r--r-- | build.xml | 1044 | ||||
-rw-r--r-- | buildscripts/texbuilder/Page2Tex.php | 5 | ||||
-rw-r--r-- | demos/quickstart/protected/pages/Advanced/I18N.page | 6 | ||||
-rw-r--r-- | demos/quickstart/protected/pages/Configurations/UrlMapping.page | 6 | ||||
-rw-r--r-- | demos/quickstart/protected/pages/Controls/TabPanel.page | 14 | ||||
-rw-r--r-- | demos/quickstart/protected/pages/Database/ActiveRecord.page | 20 | ||||
-rw-r--r-- | demos/quickstart/protected/pages/GettingStarted/NewFeatures.page | 6 |
7 files changed, 552 insertions, 549 deletions
@@ -1,110 +1,110 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - PRADO 3.1 build file - Copyright (C) 2006 PradoSoft - - Requirements - ============ - xdebug >= 2.0.0beta4 ---> -<project name="prado" basedir="." default="help"> - <taskdef name="prado-version-check" classname="PradoVersionTask" classpath="buildscripts/phing/tasks"/> - <taskdef name="prado-doc" classname="PradoDocTask" classpath="buildscripts/phing/tasks"/> -<!-- <taskdef name="prado-pear" classname="PradoPearTask" classpath="buildscripts/phing/tasks"/>--> - <taskdef name="prado-quickstart-index" classname="QuickstartIndexTask" classpath="buildscripts/phing/tasks"/> - <taskdef name="prado-api-index" classname="ManualIndexTask" classpath="buildscripts/phing/tasks"/> +<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ PRADO 3.1 build file - Copyright (C) 2006 PradoSoft
+
+ Requirements
+ ============
+ xdebug >= 2.0.0beta4
+-->
+<project name="prado" basedir="." default="help">
+ <taskdef name="prado-version-check" classname="PradoVersionTask" classpath="buildscripts/phing/tasks"/>
+ <taskdef name="prado-doc" classname="PradoDocTask" classpath="buildscripts/phing/tasks"/>
+<!-- <taskdef name="prado-pear" classname="PradoPearTask" classpath="buildscripts/phing/tasks"/>-->
+ <taskdef name="prado-quickstart-index" classname="QuickstartIndexTask" classpath="buildscripts/phing/tasks"/>
+ <taskdef name="prado-api-index" classname="ManualIndexTask" classpath="buildscripts/phing/tasks"/>
<!-- <taskdef name="prado-test" classname="PradoTestTask" classpath="buildscripts/phing/tasks"/>-->
- <taskdef name="compact-package" classname="PradoPackageTask" classpath="buildscripts/phing/tasks"/> - <taskdef name="prado-quickstart-docs" classname="PradoQuickStartDocs" classpath="buildscripts/phing/tasks" /> - - <!-- generates ${prado.version} and ${prado.revision} --> - <prado-version-check /> - - <!-- these are required external commands --> - <property name="php" value="php" /> <!-- PHP parser --> - <property name="hhc" value="hhc" /> <!-- compile phpdoc into CHM --> - <property name="pdflatex" value="pdflatex" /> <!-- generates PDF from LaTex --> - <property name="zip" value="zip" /> <!-- zip compression --> - - <property name="pkgname" value="${phing.project.name}-${prado.version}.r${prado.revision}"/> + <taskdef name="compact-package" classname="PradoPackageTask" classpath="buildscripts/phing/tasks"/>
+ <taskdef name="prado-quickstart-docs" classname="PradoQuickStartDocs" classpath="buildscripts/phing/tasks" />
+
+ <!-- generates ${prado.version} and ${prado.revision} -->
+ <prado-version-check />
+
+ <!-- these are required external commands -->
+ <property name="php" value="php" /> <!-- PHP parser -->
+ <property name="hhc" value="hhc" /> <!-- compile phpdoc into CHM -->
+ <property name="pdflatex" value="pdflatex" /> <!-- generates PDF from LaTex -->
+ <property name="zip" value="zip" /> <!-- zip compression -->
+
+ <property name="pkgname" value="${phing.project.name}-${prado.version}.r${prado.revision}"/>
<property name="compact-strip-comments" value="false" />
- - <property name="build.base.dir" value="build"/> - <property name="build.dist.dir" value="${build.base.dir}/dist"/> - <property name="build.src.dir" value="${build.base.dir}/${pkgname}"/> - <property name="build.doc.dir" value="${build.base.dir}/docs"/> - <property name="build.pear.dir" value="${build.base.dir}/pear"/> - <property name="build.web.dir" value="${build.base.dir}/web"/> - <property name="build.test.dir" value="${build.base.dir}/test-reports"/> - <property name="build.coverage.dir" value="${build.base.dir}/code-coverage"/> +
+ <property name="build.base.dir" value="build"/>
+ <property name="build.dist.dir" value="${build.base.dir}/dist"/>
+ <property name="build.src.dir" value="${build.base.dir}/${pkgname}"/>
+ <property name="build.doc.dir" value="${build.base.dir}/docs"/>
+ <property name="build.pear.dir" value="${build.base.dir}/pear"/>
+ <property name="build.web.dir" value="${build.base.dir}/web"/>
+ <property name="build.test.dir" value="${build.base.dir}/test-reports"/>
+ <property name="build.coverage.dir" value="${build.base.dir}/code-coverage"/>
<property name="build.snapshot.dir" value="${build.base.dir}/snapshot"/>
<property name="build.compact.dir" value="${build.base.dir}/${pkgname}/compact" />
- - <!-- - All Source Files in framework - --> - <fileset dir="." id="framework"> - <exclude name="**/.svn"/> - <exclude name="**/*.bak"/> - <exclude name="**/*~"/> - <exclude name="**/pradolite.php" /><!-- will be generated --> - <exclude name="**/prado-cli.php" /><!-- will be copied later --> - <include name="framework/**/*"/> - </fileset> - - <!-- - Surrounding files - --> - <fileset dir="." id="misc"> - <exclude name="**/.svn"/> - <exclude name="**/*.bak"/> - <exclude name="**/*~"/> - <include name="COPYRIGHT"/> - <include name="HISTORY"/> - <include name="UPGRADE"/> - <include name="index.html"/> - <include name="requirements/*"/> - </fileset> - - <!-- - Documentation ???? - --> - <fileset dir="." id="docs"> - <exclude name="**/.svn"/> - <exclude name="**/*.bak"/> - <exclude name="**/*~"/> - <exclude name="**/latex" /> - <exclude name="**/sqlmap_tut.pdf" /> - <include name="docs/specs/*"/> - <include name="docs/sqlmap/sqlmap.pdf" /> - </fileset> - - <!-- - Demos - --> - <fileset dir="." id="demos"> - <exclude name="**/.svn"/> - <exclude name="**/*.bak"/> - <exclude name="**/*~"/> - <exclude name="**/runtime/*"/> - <exclude name="**/assets/*"/> - <exclude name="**/runtime/*/**"/> - <exclude name="**/assets/*/**"/> - <exclude name="demos/blog/protected/Data/Blog.db" /> - <include name="demos/address-book/**/*"/> - <include name="demos/blog/**/*"/> - <include name="demos/blog-tutorial/**/*"/> - <include name="demos/chat/**/*"/> - <include name="demos/composer/**/*"/> - <include name="demos/currency-converter/**/*"/> - <include name="demos/helloworld/**/*"/> - <include name="demos/northwind-db/**/*"/> - <include name="demos/personal/**/*"/> - <include name="demos/quickstart/**/*"/> - <include name="demos/soap/**/*"/> - <include name="demos/sqlmap/**/*"/> - <include name="demos/time-tracker/**/*"/> - </fileset> +
+ <!--
+ All Source Files in framework
+ -->
+ <fileset dir="." id="framework">
+ <exclude name="**/.svn"/>
+ <exclude name="**/*.bak"/>
+ <exclude name="**/*~"/>
+ <exclude name="**/pradolite.php" /><!-- will be generated -->
+ <exclude name="**/prado-cli.php" /><!-- will be copied later -->
+ <include name="framework/**/*"/>
+ </fileset>
+
+ <!--
+ Surrounding files
+ -->
+ <fileset dir="." id="misc">
+ <exclude name="**/.svn"/>
+ <exclude name="**/*.bak"/>
+ <exclude name="**/*~"/>
+ <include name="COPYRIGHT"/>
+ <include name="HISTORY"/>
+ <include name="UPGRADE"/>
+ <include name="index.html"/>
+ <include name="requirements/*"/>
+ </fileset>
+
+ <!--
+ Documentation ????
+ -->
+ <fileset dir="." id="docs">
+ <exclude name="**/.svn"/>
+ <exclude name="**/*.bak"/>
+ <exclude name="**/*~"/>
+ <exclude name="**/latex" />
+ <exclude name="**/sqlmap_tut.pdf" />
+ <include name="docs/specs/*"/>
+ <include name="docs/sqlmap/sqlmap.pdf" />
+ </fileset>
+
+ <!--
+ Demos
+ -->
+ <fileset dir="." id="demos">
+ <exclude name="**/.svn"/>
+ <exclude name="**/*.bak"/>
+ <exclude name="**/*~"/>
+ <exclude name="**/runtime/*"/>
+ <exclude name="**/assets/*"/>
+ <exclude name="**/runtime/*/**"/>
+ <exclude name="**/assets/*/**"/>
+ <exclude name="demos/blog/protected/Data/Blog.db" />
+ <include name="demos/address-book/**/*"/>
+ <include name="demos/blog/**/*"/>
+ <include name="demos/blog-tutorial/**/*"/>
+ <include name="demos/chat/**/*"/>
+ <include name="demos/composer/**/*"/>
+ <include name="demos/currency-converter/**/*"/>
+ <include name="demos/helloworld/**/*"/>
+ <include name="demos/northwind-db/**/*"/>
+ <include name="demos/personal/**/*"/>
+ <include name="demos/quickstart/**/*"/>
+ <include name="demos/soap/**/*"/>
+ <include name="demos/sqlmap/**/*"/>
+ <include name="demos/time-tracker/**/*"/>
+ </fileset>
<!--
Test tools
@@ -112,47 +112,47 @@ <fileset dir="." id="test-tools">
<include name="tests/test_tools/**/*"/>
</fileset>
- - <!-- - Writable files and directories - --> - <fileset dir="." id="writables"> - <include name="${build.src.dir}/demos/**/runtime" /> - <include name="${build.src.dir}/demos/**/assets" /> - <include name="${build.src.dir}/demos/blog/protected/Data" /> - </fileset> - - <target name="help"> - <echo> - - Welcome to use PRADO build script! - ---------------------------------- - You may use the following command format to build a target: - - phing <target name> - - where <target name> can be one of the following: - - For all PRADO developers: - - test : run unit tests (results are under /build/test-reports); - - For PRADO release manager: - - dist : create release files; - - build : prepare a directory for distribution; - - clean : clean up the build directory; - - rebuild : clean first and then build; - - docs : generate documentation; - - pear : generate PEAR packages; - - snapshot: generate nightly snapshot; - </echo> +
+ <!--
+ Writable files and directories
+ -->
+ <fileset dir="." id="writables">
+ <include name="${build.src.dir}/demos/**/runtime" />
+ <include name="${build.src.dir}/demos/**/assets" />
+ <include name="${build.src.dir}/demos/blog/protected/Data" />
+ </fileset>
+
+ <target name="help">
+ <echo>
+
+ Welcome to use PRADO build script!
+ ----------------------------------
+ You may use the following command format to build a target:
+
+ phing <target name>
+
+ where <target name> can be one of the following:
+
+ For all PRADO developers:
+ - test : run unit tests (results are under /build/test-reports);
+
+ For PRADO release manager:
+ - dist : create release files;
+ - build : prepare a directory for distribution;
+ - clean : clean up the build directory;
+ - rebuild : clean first and then build;
+ - docs : generate documentation;
+ - pear : generate PEAR packages;
+ - snapshot: generate nightly snapshot;
+ </echo>
</target>
<!-- bulid compact prado package definitions -->
<target name="compact-collections" description="Collections">
<mkdir dir="${build.compact.dir}" />
- <mkdir dir="${build.compact.dir}/docs" /> - <mkdir dir="${build.compact.dir}/prado-dao" /> + <mkdir dir="${build.compact.dir}/docs" />
+ <mkdir dir="${build.compact.dir}/prado-dao" />
<compact-package output="${build.compact.dir}/prado-dao/collections.php" strip="${compact-strip-comments}">
<filelist dir="framework" files="PradoBase.php,TComponent.php,Exceptions/TException.php,interfaces.php" />
<filelist dir="framework/Collections" files="TList.php,TMap.php,TAttributeCollection.php,TPagedList.php,TPagedDataSource.php" />
@@ -163,9 +163,9 @@ <copy file="HISTORY" tofile="${build.compact.dir}/HISTORY" />
<delete file="${build.compact.dir}/readme.txt" />
<append destFile="${build.compact.dir}/readme.txt">PRADO Framework for PHP 5, version ${prado.version}. See docs/ directory for documentation.</append>
- - <prado-quickstart-docs output="${build.compact.dir}/docs" - pages="Advanced/Collections.page,Fundamentals/Components.page"/> +
+ <prado-quickstart-docs output="${build.compact.dir}/docs"
+ pages="Advanced/Collections.page,Fundamentals/Components.page"/>
</target>
<target name="compact-db" description="Database" depends="compact-collections">
@@ -175,7 +175,7 @@ <filelist dir="framework/Data/Common"
files="TDbTableInfo.php, TDbTableColumn.php, TDbCommandBuilder.php, TDbMetaData.php" />
</compact-package>
- <prado-quickstart-docs output="${build.compact.dir}/docs" pages="Database/DAO.page" /> + <prado-quickstart-docs output="${build.compact.dir}/docs" pages="Database/DAO.page" />
</target>
<target name="compact-db-sqlite" description="Sqlite Database" depends="compact-db">
@@ -225,8 +225,8 @@ </compact-package>
<append file="framework/Data/ActiveRecord/Exceptions/messages.txt"
destfile="${build.compact.dir}/prado-dao/messages.txt" />
- <prado-quickstart-docs output="${build.compact.dir}/docs" pages="Database/ActiveRecord.page" /> - </target> + <prado-quickstart-docs output="${build.compact.dir}/docs" pages="Database/ActiveRecord.page" />
+ </target>
<target name="compact-sqlmap" description="Package SqlMap" depends="compact-db-all">
<compact-package output="${build.compact.dir}/prado-dao/sqlmap.php" strip="${compact-strip-comments}">
@@ -240,388 +240,388 @@ </compact-package>
<append file="framework/Data/SqlMap/DataMapper/messages.txt"
destfile="${build.compact.dir}/prado-dao/messages.txt" />
- <prado-quickstart-docs output="${build.compact.dir}/docs" pages="Database/SqlMap.page" /> + <prado-quickstart-docs output="${build.compact.dir}/docs" pages="Database/SqlMap.page" />
</target>
- - <target name="compact-northwind" description="Northwind example"> - <copy todir="${build.compact.dir}/examples"> - <fileset dir="demos/northwind-db/protected/" > - <include name="database/**/*"/> - <include name="data/**/*"/> - </fileset> - </copy> - <delete file="${build.compact.dir}/examples/example.php" /> - <append destfile="${build.compact.dir}/examples/example.php"><![CDATA[<?php - -include('../prado-dao/collections.php'); -include('../prado-dao/db.php'); -include('../prado-dao/db-sqlite.php'); -include('../prado-dao/table-gateway.php'); -include('../prado-dao/active-record.php'); -include('../prado-dao/sqlmap.php'); - -$sqlite_dir = './data'; -$sqlite_db = $sqlite_dir.'/Northwind.db'; -if(!is_file($sqlite_db)) - die("Unable to find database file $sqlite_db"); -if(!is_writable($sqlite_dir)) - die("Please make sure that the directory $sqlite_dir is writable by PHP process."); -if(!is_writable($sqlite_db)) - die("Please make sure that the sqlite database file $sqlite_db is writable by PHP process."); - -//add directory "database" for autoload -$class_dir = realpath(dirname(__FILE__).'/database'); -set_include_path(get_include_path().PATH_SEPARATOR.$class_dir); -spl_autoload_register(array('PradoBase', 'autoload')); -//other forms of auto load may be used. - -$conn = new TDbConnection("sqlite:$sqlite_db"); -//set default database connection -TActiveRecordManager::getInstance()->setDbConnection($conn); - -//start playing - -foreach(Employee::finder()->findAll() as $employee) - var_dump($employee->LastName); - -//fetch all regions and its territories. -foreach(Region::finder()->withTerritories()->findAll() as $region) -{ - var_dump($region->RegionDescription); - foreach($region->Territories as $territory) - var_dump($territory->TerritoryDescription); -} - -//sqlmap example -$manager = new TSqlMapManager($conn); -$manager->configureXml('./database/sqlmap.xml'); -$sqlmap = $manager->getSqlMapGateway(); - -var_dump($sqlmap->queryForList('products-with-price', 50)); - -//similar query, but not identical -//Product::finder()->withCategory()->findAll('UnitPrice < ?', 50) - -?>]]></append> +
+ <target name="compact-northwind" description="Northwind example">
+ <copy todir="${build.compact.dir}/examples">
+ <fileset dir="demos/northwind-db/protected/" >
+ <include name="database/**/*"/>
+ <include name="data/**/*"/>
+ </fileset>
+ </copy>
+ <delete file="${build.compact.dir}/examples/example.php" />
+ <append destfile="${build.compact.dir}/examples/example.php"><![CDATA[<?php
+
+include('../prado-dao/collections.php');
+include('../prado-dao/db.php');
+include('../prado-dao/db-sqlite.php');
+include('../prado-dao/table-gateway.php');
+include('../prado-dao/active-record.php');
+include('../prado-dao/sqlmap.php');
+
+$sqlite_dir = './data';
+$sqlite_db = $sqlite_dir.'/Northwind.db';
+if(!is_file($sqlite_db))
+ die("Unable to find database file $sqlite_db");
+if(!is_writable($sqlite_dir))
+ die("Please make sure that the directory $sqlite_dir is writable by PHP process.");
+if(!is_writable($sqlite_db))
+ die("Please make sure that the sqlite database file $sqlite_db is writable by PHP process.");
+
+//add directory "database" for autoload
+$class_dir = realpath(dirname(__FILE__).'/database');
+set_include_path(get_include_path().PATH_SEPARATOR.$class_dir);
+spl_autoload_register(array('PradoBase', 'autoload'));
+//other forms of auto load may be used.
+
+$conn = new TDbConnection("sqlite:$sqlite_db");
+//set default database connection
+TActiveRecordManager::getInstance()->setDbConnection($conn);
+
+//start playing
+
+foreach(Employee::finder()->findAll() as $employee)
+ var_dump($employee->LastName);
+
+//fetch all regions and its territories.
+foreach(Region::finder()->withTerritories()->findAll() as $region)
+{
+ var_dump($region->RegionDescription);
+ foreach($region->Territories as $territory)
+ var_dump($territory->TerritoryDescription);
+}
+
+//sqlmap example
+$manager = new TSqlMapManager($conn);
+$manager->configureXml('./database/sqlmap.xml');
+$sqlmap = $manager->getSqlMapGateway();
+
+var_dump($sqlmap->queryForList('products-with-price', 50));
+
+//similar query, but not identical
+//Product::finder()->withCategory()->findAll('UnitPrice < ?', 50)
+
+?>]]></append>
</target>
<target name="compact-dao" description="All packages" depends="compact-active-record,compact-sqlmap,compact-northwind" />
<!-- end compact packaging -->
- - <target name="build" description="Building standard PRADO package v${prado.version}.${prado.revision}"> - <echo>Building pradolite.php...</echo> - <delete file="framework/pradolite.php"/> - <exec command="${php} build.php" dir="buildscripts/phpbuilder" passthru="true"/> - - <echo>Copying files to build directory...</echo> - <copy todir="${build.src.dir}"> - <fileset refid="demos"/> - <fileset refid="docs"/> - <fileset refid="framework"/> +
+ <target name="build" description="Building standard PRADO package v${prado.version}.${prado.revision}">
+ <echo>Building pradolite.php...</echo>
+ <delete file="framework/pradolite.php"/>
+ <exec command="${php} build.php" dir="buildscripts/phpbuilder" passthru="true"/>
+
+ <echo>Copying files to build directory...</echo>
+ <copy todir="${build.src.dir}">
+ <fileset refid="demos"/>
+ <fileset refid="docs"/>
+ <fileset refid="framework"/>
<fileset refid="misc"/>
- <fileset refid="test-tools" /> - </copy> - - <copy file="buildscripts/classtree/DWExtensionReadme.txt" tofile="${build.src.dir}/editors/Dreamweaver/readme.txt" /> - <copy file="framework/pradolite.php" tofile="${build.src.dir}/framework/pradolite.php" /> - <copy file="framework/prado-cli.php" tofile="${build.src.dir}/framework/prado-cli.php" /> - - <echo>Changing file permissions...</echo> - <chmod mode="0777"> - <fileset refid="writables" /> - </chmod> - - <echo>Building quickstart demo search indices...</echo> - <prado-quickstart-index todir="${build.src.dir}/demos/quickstart/protected/index/quickstart" /> - </target> - - <target name="clean"> - <echo>Cleaning up the mess</echo> - <delete dir="${build.base.dir}"/> - </target> - - <target name="rebuild" depends="clean,build" /> - - <target name="docs" depends="build"> - <echo>Build PDF + CHM + HTML Docs, it may take about 30 mins</echo> - - <echo>Building quickstart.pdf...</echo> - <delete> - <fileset dir="."> - <include name="buildscripts/texbuilder/quickstart/*.aux" /> - </fileset> - </delete> - <exec command="${php} build.php" dir="buildscripts/texbuilder/quickstart" passthru="true"/> - <exec command="${pdflatex} quickstart.tex -interaction=nonstopmode -max-print-line=120" dir="buildscripts/texbuilder/quickstart" passthru="true"/> - <exec command="${pdflatex} quickstart.tex -interaction=nonstopmode -max-print-line=120" dir="buildscripts/texbuilder/quickstart" passthru="true"/> - <exec command="${pdflatex} quickstart.tex -interaction=nonstopmode -max-print-line=120" dir="buildscripts/texbuilder/quickstart" passthru="true"/> - <move file="buildscripts/texbuilder/quickstart/quickstart.pdf" todir="${build.doc.dir}"/> - - <echo>Building API manuals...</echo> - <delete dir="${build.doc.dir}/manual"/> - <mkdir dir="${build.doc.dir}/manual" /> - <prado-doc phpdoc="${php} buildscripts/PhpDocumentor/phpdoc" - title="PRADO v${prado.version} API Manual" - destdir="${build.doc.dir}/manual" - sourcepath="${build.src.dir}/framework" - ignorelist="*pradolite.php,*prado-cli.php,*3rdParty/*,*Javascripts/*,*I18N/core/*" - output="HTML:frames:default,CHM:default:default,HTML:Smarty:PradoSoft" /> - - <echo>Indexing API manuals...</echo> - <prado-api-index docdir="${build.doc.dir}/manual/HTMLSmartyConverter" todir="${build.doc.dir}/manual/HTMLSmartyConverter" /> - - <copy file="buildscripts/index/search.php" todir="${build.doc.dir}/manual/HTMLSmartyConverter" /> - - <exec command="${php} build.php" dir="buildscripts/classtree" passthru="true"/> - - <echo>Generating CHM Content (Quickstart + ClassDocs)</echo> - <exec command="${php} build.php" dir="buildscripts/chmbuilder" passthru="true"/> - <!-- done on project website - <echo>Generating CHM Content (WIKI)</echo> - <exec command="${php} build.php" dir="buildscripts/wikibuilder" passthru="true"/> - --> - <if> - <equals arg1="${prado.winbuild}" arg2="true"/> - <then> - <exec command="${hhc} ${build.doc.dir}/prado3_manual.hhp" /> - </then> - </if> - </target> - - <target name="dist" depends="rebuild,docs"> - <echo>Moving doc files to build...</echo> - <mkdir dir="${build.dist.dir}" /> - <move file="${build.doc.dir}/quickstart.pdf" todir="${build.src.dir}/docs" /> - <move todir="${build.src.dir}/docs/manual"> - <fileset dir="${build.doc.dir}/manual/HTMLframesConverter"> - <include name="**/**" /> - </fileset> - </move> - <if> - <equals arg1="${prado.winbuild}" arg2="true"/> - <then> - <move file="${build.doc.dir}/prado3_manual.chm" tofile="${build.src.dir}/docs/prado3_manual.chm" /> - </then> - </if> - - <echo>Generating compressed distribution files...</echo> - <if> - <equals arg1="${prado.winbuild}" arg2="false"/> - <then> - <exec command="tar czvf ${pkgname}.tar.gz ${pkgname}" dir="${build.base.dir}"/> - <move file="${build.base.dir}/${pkgname}.tar.gz" todir="${build.dist.dir}" /> - </then> - </if> - - <!-- - <exec command="zip ${pkgname}.zip -r ${pkgname}" dir="${build.base.dir}" /> - <move file="${build.base.dir}/${pkgname}.zip" todir="${build.dist.dir}" /> - --> - - <echo>Generating files for pradosoft.com...</echo> - <echo>Compiling class docs...</echo> - <exec command="${php} build.php" dir="buildscripts/classtree" passthru="true"/> - <move file="buildscripts/classtree/classes.data" todir="${build.web.dir}/protected/Data" /> - - <echo>Moving HTML docs to Web folder...</echo> - <mkdir dir="${build.web.dir}" /> - <move todir="${build.web.dir}/docs/manual"> - <fileset dir="${build.doc.dir}/manual/HTMLSmartyConverter"> - <include name="**/**" /> - </fileset> - </move> - - <echo> - - - Distribution Not Completed Yet!!! - -The following steps need to be manually performed in order to complete -the PRADO distribution: - -1. Package DreamWeaver extension by running DW extension manager with - buildscripts/classtree/PRADO.mxi and saving the generated file as - "${build.src.dir}/editors/Dreamweaver/PRADO.mxp" - -2. Use winzip (on Windows) and gzip (on Linux) to generate the compressed - release files of the direcotry - "${build.src.dir}". - - </echo> - </target> - - <target name="test" description="Running unit tests"> - <delete dir="${build.test.dir}"/> - <mkdir dir="${build.test.dir}"/> - <prado-test codecoverage="false" haltonfailure="false" haltonerror="false" printsummary="true"> - <batchtest> - <fileset dir="tests/unit"> - <include name="**/*Test.php"/> - </fileset> - </batchtest> - <formatter type="xml" todir="${build.test.dir}" outfile="unit-tests.xml"/> - </prado-test> - <phpunit2report infile="${build.test.dir}/unit-tests.xml" format="frames" styledir="buildscripts/phing/style" todir="${build.test.dir}"/> - </target> - - <target name="snapshot" depends="rebuild"> - <echo>Generating compressed distribution files...</echo> - <if> - <equals arg1="${prado.winbuild}" arg2="false"/> - <then> - <exec command="tar czvf ${pkgname}.tar.gz ${pkgname}" dir="${build.base.dir}"/> - <move file="${build.base.dir}/${pkgname}.tar.gz" todir="${build.dist.dir}" /> - </then> - </if> - <exec command="zip ${pkgname}.zip -r ${pkgname}" dir="${build.base.dir}" /> - <move file="${build.base.dir}/${pkgname}.zip" tofile="${build.snapshot.dir}/prado-latest.zip" /> - <copy file="${build.src.dir}/HISTORY" tofile="${build.snapshot.dir}/changelog-latest.txt" /> - </target> - -<!-- - <taskdef name="phplint" classname="PhpLintTask" classpath="buildscripts/phing/tasks"/> - <taskdef name="xmllint" classname="XmlLintTask" classpath="buildscripts/phing/tasks"/> - <taskdef name="analyze" classname="ZendCodeAnalyzerTask" classpath="buildscripts/phing/tasks"/> - <taskdef name="pear-package" classname="BuildPradoPEARPackageTask" classpath="buildscripts/phing/tasks"/> - - <target name="pear" depends="" description="Creating PEAR package"> - <mkdir dir="${build.pear.dir}" /> - <prado-pear pkgdir="${build.pear.dir}" - channel="pear.php.net" - version="${prado.version}" - state="stable" - category="framework" - package="prado" - summary="PRADO is a ...." - pkgdescription="detailed description..." - notes="www.pradosoft.com" - license="BSD" - /> - </target> - <target name="test" description="Run unit tests"> - <echo>Preparing directory structure</echo> - <delete dir="${reports.dir}"/> - <mkdir dir="${reports.dir}"/> - <delete dir="${reports.unit.dir}"/> - <delete dir="${reports.codecoverage.dir}"/> - - <if> - <equals arg1="${codecoverage}" arg2="true"/> - <then> - <mkdir dir="${reports.codecoverage.dir}"/> - <echo>Preparing Code Coverage Database</echo> - <coverage-setup database="${reports.codecoverage.dir}/coverage.db"> - <fileset dir="${src.dir}"> - <include name="**/*.php"/> - <exclude name="Web/Javascripts/js/clientscripts.php"/> - <exclude name="Data/TCache.php"/> - <exclude name="DataAccess/**/*.php"/> - <exclude name="I18N/core/Gettext/MO.php"/> - <exclude name="I18N/core/Gettext/PO.php"/> - <exclude name="I18N/core/util.php"/> - <exclude name="I18N/TGlobalization.php"/> - <exclude name="I18N/TGlobalizationAutoDetect.php"/> - <exclude name="Security/TUserManager.php"/> - <exclude name="Security/TMembershipManager.php"/> - <exclude name="core.php"/> - <exclude name="3rdParty/**/*.php"/> - <exclude name="pradolite.php"/> - <exclude name="prado.php"/> - </fileset> - </coverage-setup> - </then> - </if> - - <echo>Running Unit Tests</echo> - <phpunit2 codecoverage="${codecoverage}" haltonfailure="false" haltonerror="false" printsummary="true"> - <batchtest> - <fileset dir="${tests.dir}"> - <include name="**/*Test.php"/> - </fileset> - </batchtest> - <formatter type="xml" todir="${reports.dir}" outfile="logfile.xml"/> - </phpunit2> - - <echo>Creating Unit Test Report</echo> - <mkdir dir="${reports.unit.dir}"/> - <phpunit2report infile="${reports.dir}/logfile.xml" format="frames" styledir="${reports.style.dir}" todir="${reports.unit.dir}"/> - - <if> - <equals arg1="${codecoverage}" arg2="true"/> - <then> - <echo>Creating Code Coverage Report</echo> - <coverage-report outfile="${reports.dir}/coverage.xml" geshipath="${reports.geshi.dir}" geshilanguagespath="${reports.geshi.dir}/geshi"> - <report todir="${reports.codecoverage.dir}" styledir="${reports.style.dir}"/> - </coverage-report> - </then> - </if> - </target> - - <target name="lint" description="Check syntax of PHP source files"> - <phplint> - <fileset refid="src"/> - </phplint> - </target> - - <target name="lint-demos" description="Check syntax of demo files and configuration files"> - <echo>Validate application configuration</echo> - <xmllint schema="${application.xsd}"> - <fileset dir="demos"> - <exclude name="**/.svn"/> - <include name="**/application.xml"/> - </fileset> - </xmllint> - <echo>Validate page configuration</echo> - <xmllint schema="${config.xsd}"> - <fileset dir="demos"> - <exclude name="**/.svn"/> - <include name="**/config.xml"/> - </fileset> - </xmllint> - <phplint> - <fileset dir="demos"> - <exclude name="**/.svn"/> - <include name="**/*.php"/> - </fileset> - </phplint> - </target> - <target name="build-pear-package"> - <echo>Preparing files for PEAR package...</echo> - <delete dir="${build.pear.dir}"/> - <mkdir dir="${build.pear.dir}"/> - <copy todir="${build.pear.dir}"> - <fileset refid="framework"/> - <fileset dir="${build.base.dir}"> - <include name="${prado.lite}"/> - </fileset> - </copy> - - <echo>Creating package.xml...</echo> - <pear-package dir="${build.pear.dir}" destFile="${build.base.dir}/pear/package.xml" version="${version}" state="${pear.state}" notes="${notes}"> - <fileset refid="framework"/> - <fileset dir="${build.base.dir}"> - <include name="${prado.lite}"/> - </fileset> - </pear-package> - </target> - <target name="dist-pear" depends="build-pear-package" description="Create PRADO PEAR package"> - <delete file="${dist.pearfile}"/> - <mkdir dir="${dist.base.dir}"/> - <exec command="pear package" dir="${build.pear.dir}" passthru="true"/> - <move file="${build.pear.dir}/prado3-${version}.tgz" tofile="${dist.pearfile}"/> - </target> - <target name="analyze" description="Analyze PHP source files with Zend Code Analyzer"> - <analyze analyzerPath="${zca}" disable="var-ref-notmodified,var-use-before-def,var-arg-unused,if-if-else"> - <fileset refid="src"/> - </analyze> - </target> - - <target name="install" description="Install PEAR package locally"> - <exec command="sudo pear install ${dist.pearfile}" dir="." passthru="true"/> - </target> - - <target name="uninstall" description="Uninstall PEAR package locally"> - <exec command="sudo pear uninstall pear.pradosoft.com/prado3" dir="." passthru="true"/> - </target> ---> -</project> + <fileset refid="test-tools" />
+ </copy>
+
+ <copy file="buildscripts/classtree/DWExtensionReadme.txt" tofile="${build.src.dir}/editors/Dreamweaver/readme.txt" />
+ <copy file="framework/pradolite.php" tofile="${build.src.dir}/framework/pradolite.php" />
+ <copy file="framework/prado-cli.php" tofile="${build.src.dir}/framework/prado-cli.php" />
+
+ <echo>Changing file permissions...</echo>
+ <chmod mode="0777">
+ <fileset refid="writables" />
+ </chmod>
+
+ <echo>Building quickstart demo search indices...</echo>
+ <prado-quickstart-index todir="${build.src.dir}/demos/quickstart/protected/index/quickstart" />
+ </target>
+
+ <target name="clean">
+ <echo>Cleaning up the mess</echo>
+ <delete dir="${build.base.dir}"/>
+ </target>
+
+ <target name="rebuild" depends="clean,build" />
+
+ <target name="docs" depends="build">
+ <echo>Build PDF + CHM + HTML Docs, it may take about 30 mins</echo>
+
+ <echo>Building quickstart.pdf...</echo>
+ <delete>
+ <fileset dir=".">
+ <include name="buildscripts/texbuilder/quickstart/*.aux" />
+ </fileset>
+ </delete>
+ <exec command="${php} build.php" dir="buildscripts/texbuilder/quickstart" passthru="true"/>
+ <exec command="${pdflatex} -interaction=nonstopmode -max-print-line=120 quickstart.tex" dir="buildscripts/texbuilder/quickstart" passthru="true"/>
+ <exec command="${pdflatex} -interaction=nonstopmode -max-print-line=120 quickstart.tex" dir="buildscripts/texbuilder/quickstart" passthru="true"/>
+ <exec command="${pdflatex} -interaction=nonstopmode -max-print-line=120 quickstart.tex" dir="buildscripts/texbuilder/quickstart" passthru="true"/>
+ <move file="buildscripts/texbuilder/quickstart/quickstart.pdf" todir="${build.doc.dir}"/>
+
+ <echo>Building API manuals...</echo>
+ <delete dir="${build.doc.dir}/manual"/>
+ <mkdir dir="${build.doc.dir}/manual" />
+ <prado-doc phpdoc="${php} buildscripts/PhpDocumentor/phpdoc"
+ title="PRADO v${prado.version} API Manual"
+ destdir="${build.doc.dir}/manual"
+ sourcepath="${build.src.dir}/framework"
+ ignorelist="*pradolite.php,*prado-cli.php,*3rdParty/*,*Javascripts/*,*I18N/core/*"
+ output="HTML:frames:default,CHM:default:default,HTML:Smarty:PradoSoft" />
+
+ <echo>Indexing API manuals...</echo>
+ <prado-api-index docdir="${build.doc.dir}/manual/HTMLSmartyConverter" todir="${build.doc.dir}/manual/HTMLSmartyConverter" />
+
+ <copy file="buildscripts/index/search.php" todir="${build.doc.dir}/manual/HTMLSmartyConverter" />
+
+ <exec command="${php} build.php" dir="buildscripts/classtree" passthru="true"/>
+
+ <echo>Generating CHM Content (Quickstart + ClassDocs)</echo>
+ <exec command="${php} build.php" dir="buildscripts/chmbuilder" passthru="true"/>
+ <!-- done on project website
+ <echo>Generating CHM Content (WIKI)</echo>
+ <exec command="${php} build.php" dir="buildscripts/wikibuilder" passthru="true"/>
+ -->
+ <if>
+ <equals arg1="${prado.winbuild}" arg2="true"/>
+ <then>
+ <exec command="${hhc} ${build.doc.dir}/prado3_manual.hhp" />
+ </then>
+ </if>
+ </target>
+
+ <target name="dist" depends="rebuild,docs">
+ <echo>Moving doc files to build...</echo>
+ <mkdir dir="${build.dist.dir}" />
+ <move file="${build.doc.dir}/quickstart.pdf" todir="${build.src.dir}/docs" />
+ <move todir="${build.src.dir}/docs/manual">
+ <fileset dir="${build.doc.dir}/manual/HTMLframesConverter">
+ <include name="**/**" />
+ </fileset>
+ </move>
+ <if>
+ <equals arg1="${prado.winbuild}" arg2="true"/>
+ <then>
+ <move file="${build.doc.dir}/prado3_manual.chm" tofile="${build.src.dir}/docs/prado3_manual.chm" />
+ </then>
+ </if>
+
+ <echo>Generating compressed distribution files...</echo>
+ <if>
+ <equals arg1="${prado.winbuild}" arg2="false"/>
+ <then>
+ <exec command="tar czvf ${pkgname}.tar.gz ${pkgname}" dir="${build.base.dir}"/>
+ <move file="${build.base.dir}/${pkgname}.tar.gz" todir="${build.dist.dir}" />
+ </then>
+ </if>
+
+ <!--
+ <exec command="zip ${pkgname}.zip -r ${pkgname}" dir="${build.base.dir}" />
+ <move file="${build.base.dir}/${pkgname}.zip" todir="${build.dist.dir}" />
+ -->
+
+ <echo>Generating files for pradosoft.com...</echo>
+ <echo>Compiling class docs...</echo>
+ <exec command="${php} build.php" dir="buildscripts/classtree" passthru="true"/>
+ <move file="buildscripts/classtree/classes.data" todir="${build.web.dir}/protected/Data" />
+
+ <echo>Moving HTML docs to Web folder...</echo>
+ <mkdir dir="${build.web.dir}" />
+ <move todir="${build.web.dir}/docs/manual">
+ <fileset dir="${build.doc.dir}/manual/HTMLSmartyConverter">
+ <include name="**/**" />
+ </fileset>
+ </move>
+
+ <echo>
+
+
+ Distribution Not Completed Yet!!!
+
+The following steps need to be manually performed in order to complete
+the PRADO distribution:
+
+1. Package DreamWeaver extension by running DW extension manager with
+ buildscripts/classtree/PRADO.mxi and saving the generated file as
+ "${build.src.dir}/editors/Dreamweaver/PRADO.mxp"
+
+2. Use winzip (on Windows) and gzip (on Linux) to generate the compressed
+ release files of the direcotry
+ "${build.src.dir}".
+
+ </echo>
+ </target>
+
+ <target name="test" description="Running unit tests">
+ <delete dir="${build.test.dir}"/>
+ <mkdir dir="${build.test.dir}"/>
+ <prado-test codecoverage="false" haltonfailure="false" haltonerror="false" printsummary="true">
+ <batchtest>
+ <fileset dir="tests/unit">
+ <include name="**/*Test.php"/>
+ </fileset>
+ </batchtest>
+ <formatter type="xml" todir="${build.test.dir}" outfile="unit-tests.xml"/>
+ </prado-test>
+ <phpunit2report infile="${build.test.dir}/unit-tests.xml" format="frames" styledir="buildscripts/phing/style" todir="${build.test.dir}"/>
+ </target>
+
+ <target name="snapshot" depends="rebuild">
+ <echo>Generating compressed distribution files...</echo>
+ <if>
+ <equals arg1="${prado.winbuild}" arg2="false"/>
+ <then>
+ <exec command="tar czvf ${pkgname}.tar.gz ${pkgname}" dir="${build.base.dir}"/>
+ <move file="${build.base.dir}/${pkgname}.tar.gz" todir="${build.dist.dir}" />
+ </then>
+ </if>
+ <exec command="zip ${pkgname}.zip -r ${pkgname}" dir="${build.base.dir}" />
+ <move file="${build.base.dir}/${pkgname}.zip" tofile="${build.snapshot.dir}/prado-latest.zip" />
+ <copy file="${build.src.dir}/HISTORY" tofile="${build.snapshot.dir}/changelog-latest.txt" />
+ </target>
+
+<!--
+ <taskdef name="phplint" classname="PhpLintTask" classpath="buildscripts/phing/tasks"/>
+ <taskdef name="xmllint" classname="XmlLintTask" classpath="buildscripts/phing/tasks"/>
+ <taskdef name="analyze" classname="ZendCodeAnalyzerTask" classpath="buildscripts/phing/tasks"/>
+ <taskdef name="pear-package" classname="BuildPradoPEARPackageTask" classpath="buildscripts/phing/tasks"/>
+
+ <target name="pear" depends="" description="Creating PEAR package">
+ <mkdir dir="${build.pear.dir}" />
+ <prado-pear pkgdir="${build.pear.dir}"
+ channel="pear.php.net"
+ version="${prado.version}"
+ state="stable"
+ category="framework"
+ package="prado"
+ summary="PRADO is a ...."
+ pkgdescription="detailed description..."
+ notes="www.pradosoft.com"
+ license="BSD"
+ />
+ </target>
+ <target name="test" description="Run unit tests">
+ <echo>Preparing directory structure</echo>
+ <delete dir="${reports.dir}"/>
+ <mkdir dir="${reports.dir}"/>
+ <delete dir="${reports.unit.dir}"/>
+ <delete dir="${reports.codecoverage.dir}"/>
+
+ <if>
+ <equals arg1="${codecoverage}" arg2="true"/>
+ <then>
+ <mkdir dir="${reports.codecoverage.dir}"/>
+ <echo>Preparing Code Coverage Database</echo>
+ <coverage-setup database="${reports.codecoverage.dir}/coverage.db">
+ <fileset dir="${src.dir}">
+ <include name="**/*.php"/>
+ <exclude name="Web/Javascripts/js/clientscripts.php"/>
+ <exclude name="Data/TCache.php"/>
+ <exclude name="DataAccess/**/*.php"/>
+ <exclude name="I18N/core/Gettext/MO.php"/>
+ <exclude name="I18N/core/Gettext/PO.php"/>
+ <exclude name="I18N/core/util.php"/>
+ <exclude name="I18N/TGlobalization.php"/>
+ <exclude name="I18N/TGlobalizationAutoDetect.php"/>
+ <exclude name="Security/TUserManager.php"/>
+ <exclude name="Security/TMembershipManager.php"/>
+ <exclude name="core.php"/>
+ <exclude name="3rdParty/**/*.php"/>
+ <exclude name="pradolite.php"/>
+ <exclude name="prado.php"/>
+ </fileset>
+ </coverage-setup>
+ </then>
+ </if>
+
+ <echo>Running Unit Tests</echo>
+ <phpunit2 codecoverage="${codecoverage}" haltonfailure="false" haltonerror="false" printsummary="true">
+ <batchtest>
+ <fileset dir="${tests.dir}">
+ <include name="**/*Test.php"/>
+ </fileset>
+ </batchtest>
+ <formatter type="xml" todir="${reports.dir}" outfile="logfile.xml"/>
+ </phpunit2>
+
+ <echo>Creating Unit Test Report</echo>
+ <mkdir dir="${reports.unit.dir}"/>
+ <phpunit2report infile="${reports.dir}/logfile.xml" format="frames" styledir="${reports.style.dir}" todir="${reports.unit.dir}"/>
+
+ <if>
+ <equals arg1="${codecoverage}" arg2="true"/>
+ <then>
+ <echo>Creating Code Coverage Report</echo>
+ <coverage-report outfile="${reports.dir}/coverage.xml" geshipath="${reports.geshi.dir}" geshilanguagespath="${reports.geshi.dir}/geshi">
+ <report todir="${reports.codecoverage.dir}" styledir="${reports.style.dir}"/>
+ </coverage-report>
+ </then>
+ </if>
+ </target>
+
+ <target name="lint" description="Check syntax of PHP source files">
+ <phplint>
+ <fileset refid="src"/>
+ </phplint>
+ </target>
+
+ <target name="lint-demos" description="Check syntax of demo files and configuration files">
+ <echo>Validate application configuration</echo>
+ <xmllint schema="${application.xsd}">
+ <fileset dir="demos">
+ <exclude name="**/.svn"/>
+ <include name="**/application.xml"/>
+ </fileset>
+ </xmllint>
+ <echo>Validate page configuration</echo>
+ <xmllint schema="${config.xsd}">
+ <fileset dir="demos">
+ <exclude name="**/.svn"/>
+ <include name="**/config.xml"/>
+ </fileset>
+ </xmllint>
+ <phplint>
+ <fileset dir="demos">
+ <exclude name="**/.svn"/>
+ <include name="**/*.php"/>
+ </fileset>
+ </phplint>
+ </target>
+ <target name="build-pear-package">
+ <echo>Preparing files for PEAR package...</echo>
+ <delete dir="${build.pear.dir}"/>
+ <mkdir dir="${build.pear.dir}"/>
+ <copy todir="${build.pear.dir}">
+ <fileset refid="framework"/>
+ <fileset dir="${build.base.dir}">
+ <include name="${prado.lite}"/>
+ </fileset>
+ </copy>
+
+ <echo>Creating package.xml...</echo>
+ <pear-package dir="${build.pear.dir}" destFile="${build.base.dir}/pear/package.xml" version="${version}" state="${pear.state}" notes="${notes}">
+ <fileset refid="framework"/>
+ <fileset dir="${build.base.dir}">
+ <include name="${prado.lite}"/>
+ </fileset>
+ </pear-package>
+ </target>
+ <target name="dist-pear" depends="build-pear-package" description="Create PRADO PEAR package">
+ <delete file="${dist.pearfile}"/>
+ <mkdir dir="${dist.base.dir}"/>
+ <exec command="pear package" dir="${build.pear.dir}" passthru="true"/>
+ <move file="${build.pear.dir}/prado3-${version}.tgz" tofile="${dist.pearfile}"/>
+ </target>
+ <target name="analyze" description="Analyze PHP source files with Zend Code Analyzer">
+ <analyze analyzerPath="${zca}" disable="var-ref-notmodified,var-use-before-def,var-arg-unused,if-if-else">
+ <fileset refid="src"/>
+ </analyze>
+ </target>
+
+ <target name="install" description="Install PEAR package locally">
+ <exec command="sudo pear install ${dist.pearfile}" dir="." passthru="true"/>
+ </target>
+
+ <target name="uninstall" description="Uninstall PEAR package locally">
+ <exec command="sudo pear uninstall pear.pradosoft.com/prado3" dir="." passthru="true"/>
+ </target>
+-->
+</project>
diff --git a/buildscripts/texbuilder/Page2Tex.php b/buildscripts/texbuilder/Page2Tex.php index 04a60f93..008b30fa 100644 --- a/buildscripts/texbuilder/Page2Tex.php +++ b/buildscripts/texbuilder/Page2Tex.php @@ -210,9 +210,12 @@ class Page2Tex $html = preg_replace_callback('/<!--\s*tabular:([^-]*)-->\s*<table[^>]*>((.|\n)*?)<\/table>/',
array($this, 'tabular'), $html);
- $html = preg_replace('/<!--(.*)-->/', '', $html);
+ $html = preg_replace('/<!--((.|\n)*?)-->/', '', $html);
$html = preg_replace('/<div class="last-modified">((.|\n)*?)<\/div>/', '', $html);
+ //useless divs
+ $html = preg_replace('/<div [^>]*">((.|\n)*?)<\/div>/', '$1', $html);
+
//since
$html = preg_replace('/<com:SinceVersion[^>]+>/', '', $html);
diff --git a/demos/quickstart/protected/pages/Advanced/I18N.page b/demos/quickstart/protected/pages/Advanced/I18N.page index 5d3e05b5..1840e69b 100644 --- a/demos/quickstart/protected/pages/Advanced/I18N.page +++ b/demos/quickstart/protected/pages/Advanced/I18N.page @@ -78,10 +78,10 @@ The <tt>marker</tt> value is used to surround any untranslated text. Each translation message is wrapped within a <tt>trans-unit</tt> tag, where <tt>source</tt> is the original message, and <tt>target</tt> is the translated message. Editors such as <a href="http://www.heartsome.net/EN/xlfedit.html">Heartsome XLIFF Translation Editor</a> can help in editing these XML files.
-<h2>Using a Database for translation</h2>
+<h2 id="166008">Using a Database for translation</h2>
<com:SinceVersion Version="3.1.3" />
-<p>Since version 3.1.3 the messages can also be stored in a database using the connection id from an existing <tt>TDataSourceConfig</tt>. You have to create two tables in your database: <tt>catalogue</tt> and <tt>trans_unit</tt>. The catalogue table needs an entry for each catalogue you want to use. Example schemas for different databases can be found in the framework's <tt>I18N/schema</tt> directory. To configure translation with a database use:</>
+<p id="830016" class="block-content">Since version 3.1.3 the messages can also be stored in a database using the connection id from an existing <tt>TDataSourceConfig</tt>. You have to create two tables in your database: <tt>catalogue</tt> and <tt>trans_unit</tt>. The catalogue table needs an entry for each catalogue you want to use. Example schemas for different databases can be found in the framework's <tt>I18N/schema</tt> directory. To configure translation with a database use:</>
<com:TTextHighlighter Language="xml" CssClass="source block-content">
<module id="db1" class="System.Data.TDataSourceConfig">
@@ -97,7 +97,7 @@ Each translation message is wrapped within a <tt>trans-unit</tt> tag, where <tt> </module>
</com:TTextHighlighter>
-<p>The translation messages will be stored in the <tt>trans_unit</tt> table. Add your translation in the <tt>target</tt> field of that table. You should make sure that you are working on the right catalogue by comparing the message's <tt>cat_id</tt> with that from the catalogue table.</p>
+<p id="830017" class="block-content">The translation messages will be stored in the <tt>trans_unit</tt> table. Add your translation in the <tt>target</tt> field of that table. You should make sure that you are working on the right catalogue by comparing the message's <tt>cat_id</tt> with that from the catalogue table.</p>
<h2 id="6206">Setting and Changing Culture</h2>
<p id="790633" class="block-content">Once globalization is enabled, you can access the globalization settings, such as, <tt>Culture</tt>, <tt>Charset</tt>, etc, using </p>
diff --git a/demos/quickstart/protected/pages/Configurations/UrlMapping.page b/demos/quickstart/protected/pages/Configurations/UrlMapping.page index bdd0b81d..6bbedc28 100644 --- a/demos/quickstart/protected/pages/Configurations/UrlMapping.page +++ b/demos/quickstart/protected/pages/Configurations/UrlMapping.page @@ -133,9 +133,9 @@ parameters with these patterns if a lot of pages share common parameters.</p> </ul>
</p>
-<p>As above, put more specific rules before more common rules as the first matching rule will be used.</p>
+<p id="250001" class="block-content">As above, put more specific rules before more common rules as the first matching rule will be used.</p>
-<p>To make configuration of friendly URLs for multiple pages even easier, you can also use <tt>UrlFormat="Path"</tt>
+<p id="250002" class="block-content">To make configuration of friendly URLs for multiple pages even easier, you can also use <tt>UrlFormat="Path"</tt>
in combination with wildcard patterns. In fact, this feature only is available in combination with wildcard rules:</P>
<com:TTextHighlighter Language="xml" CssClass="source block-content">
@@ -160,7 +160,7 @@ Since version 3.1.1, <tt>TUrlMapping</tt> starts to support constructing customi <p id="230234" class="block-content">
A matching pattern is one whose <tt>ServiceID</tt> and <tt>ServiceParameter</tt> properties are the same as those passed to <tt>constructUrl()</tt> and whose named parameters are found in the GET variables. For example, <tt>constructUrl('Posts.ListPost',array('cat'=>2))</tt> will use the third pattern in the above example.
-<p>
+<p id="250003" class="block-content">
<p id="230235" class="block-content">
By default, <tt>TUrlMapping</tt> will construct URLs prefixed with the currently requesting PHP script path, such as <tt><b>/path/to/index.php</b>/article/3</tt>. Users may change this behavior by explicitly specifying the URL prefix through its <tt>UrlPrefix</tt> property. For example, if the Web server configuration treats <tt>index.php</tt> as the default script, we can set <tt>UrlPrefix</tt> as <tt>/path/to</tt> and the constructed URL will look like <tt>/path/to/article/3</tt>.
diff --git a/demos/quickstart/protected/pages/Controls/TabPanel.page b/demos/quickstart/protected/pages/Controls/TabPanel.page index d85de681..f4c9962d 100644 --- a/demos/quickstart/protected/pages/Controls/TabPanel.page +++ b/demos/quickstart/protected/pages/Controls/TabPanel.page @@ -1,13 +1,13 @@ <com:TContent ID="body" >
-<h1>TTabPanel</h1>
+<h1 id="106004">TTabPanel</h1>
<com:DocLink ClassPath="System.Web.UI.WebControls.TTabPanel" />
-<p>
+<p id="530004" class="block-content">
<tt>TTabPanel</tt> displays a tabbed panel. Users can click on the tab bar to switching among different tab views. Each tab view is an independent panel that can contain arbitrary content.
</p>
-<p>
+<p id="530005" class="block-content">
A <tt>TTabPanel</tt> control consists of one or several <tt>TTabView</tt> controls representing the possible tab views. At any time, only one tab view is visible (active), which is specified by any of the following properties:
</p>
@@ -17,11 +17,11 @@ A <tt>TTabPanel</tt> control consists of one or several <tt>TTabView</tt> contro <li><tt>ActiveView</tt> - the visible view instance.</li>
</ul>
-<p>
+<p id="530006" class="block-content">
If both <tt>ActiveViewIndex</tt> and <tt>ActiveViewID</tt> are set, the latter takes precedence.
</p>
-<p>
+<p id="530007" class="block-content">
<tt>TTabPanel</tt> uses CSS to specify the appearance of the tab bar and panel. By default, an embedded CSS file will be published which contains the default CSS for <tt>TTabPanel</tt>. You may also use your own CSS file by specifying the <tt>CssUrl</tt> property. The following properties specify the CSS classes used for elements in a <tt>TTabPanel</tt>:
</p>
@@ -32,11 +32,11 @@ If both <tt>ActiveViewIndex</tt> and <tt>ActiveViewID</tt> are set, the latter t <li><tt>ViewCssClass</tt> - the CSS class for the div element enclosing view content (defaults to 'tab-view');</li>
</ul>
-<p>
+<p id="530008" class="block-content">
To use TTabPanel, write a template like following:
</p>
-<com:TTextHighlighter Language="prado" CssClass="source">
+<com:TTextHighlighter Language="prado" CssClass="source block-content" id="code_530117">
<com:TTabPanel>
<com:TTabView Caption="View 1">
content for view 1
diff --git a/demos/quickstart/protected/pages/Database/ActiveRecord.page b/demos/quickstart/protected/pages/Database/ActiveRecord.page index bc0df529..78947faf 100644 --- a/demos/quickstart/protected/pages/Database/ActiveRecord.page +++ b/demos/quickstart/protected/pages/Database/ActiveRecord.page @@ -50,16 +50,16 @@ <li>Fetch relationships (related foreign objects) such as "has many", "has one", "belongs to" and "many to many" via association table.</li> <li>Lazy loading of relationships.</li> </ul> -<h2>Design Implications</h2> -<p> +<h2 id="144005">Design Implications</h2> +<p id="720009" class="block-content"> Prado's implementation of Active Record does not maintain referential identity. Each object obtained using Active Record is a copy of the data in the database. For example, If you ask for a particular customer and get back a <tt>Customer</tt> object, the next time you ask for that customer you get back another instance of a <tt>Customer</tt> object. This implies that a strict comparison (i.e., using <tt>===</tt>) will return false, while loose comparison (i.e., using <tt>==</tt>) will return true if the object values are equal by loose comparison. -<p> -<p> +<p id="720010" class="block-content"> +<p id="720011" class="block-content"> This is design implication related to the following question. <i>"Do you think of the customer as an object, of which there's only one, or do you think of the objects you operate on as <b>copies</b> of the database?"</i> @@ -876,8 +876,8 @@ class Category extends TActiveRecord } </com:TTextHighlighter> -<h3>Query Criteria for Related Objects</h3> -<p> +<h3 id="144007">Query Criteria for Related Objects</h3> +<p id="720012" class="block-content"> In the above, we show that an Active Record object can reference to its related objects by declaring a static class member $RELATIONS which specifies a list of relations. Each relation is specified as an array consisting of three elements: relation type, related AR class name, @@ -1147,14 +1147,14 @@ arrays. E.g. <tt>$player->skills[] = new SkillRecord()</tt>. If <tt>array</tt> w will be thrown. </p> -<h2>Column Mapping</h2> -<p> +<h2 id="144006">Column Mapping</h2> +<p id="720013" class="block-content"> Since v3.1.1, Active Record starts to support column mapping. Column mapping allows developers to address columns in Active Record using a more consistent naming convention. In particular, using column mapping, one can access a column using whatever name he likes, rather than limited by the name defined in the database schema. </p> -<p> +<p id="720014" class="block-content"> To use column mapping, declare a static array named <tt>COLUMN_MAPPING</tt> in the Active Record class. The keys of the array are column names (called <i>physical column names</i>) as defined in the database schema, while the values are corresponding property names (called <i>logical column names</i>) defined @@ -1181,7 +1181,7 @@ class UserRecord extends TActiveRecord //.... } </com:TTextHighlighter> -<p> +<p id="720015" class="block-content"> With the above column mapping, we can address <tt>first_name</tt> using <tt>$userRecord->firstName</tt> instead of <tt>$userRecord->first_name</tt>. This helps separation of logic and model. </p> diff --git a/demos/quickstart/protected/pages/GettingStarted/NewFeatures.page b/demos/quickstart/protected/pages/GettingStarted/NewFeatures.page index 51dbb981..8d509bdb 100644 --- a/demos/quickstart/protected/pages/GettingStarted/NewFeatures.page +++ b/demos/quickstart/protected/pages/GettingStarted/NewFeatures.page @@ -6,19 +6,19 @@ This page summarizes the main new features that are introduced in each PRADO release.
</p> -<h2>Version 3.1.3</h2> +<h2 id="8001">Version 3.1.3</h2> <ul> <li>Added <a href="?page=ActiveControls.DragDrop">Drag and drop controls</a></li> <li>Added TActiveDatePicker control</li> </ul>
-<h2>Version 3.1.2</h2> +<h2 id="8002">Version 3.1.2</h2> <ul> <li>Added a new active control <a href="?page=ActiveControls.ActivePager">TActivePager</a> that allows to paginate a databound control with an ajax callback.</li> <li>Added TFirebugLogRoute to send logs to the Firebug console</li> </ul> -<h2>Version 3.1.1</h2>
+<h2 id="8003">Version 3.1.1</h2>
<ul>
<li>Added a new control <a href="?page=Controls.TabPanel">TTabPanel</a> that displays tabbed views.</li>
<li>Added a new control <a href="?page=Controls.Keyboard">TKeyboard</a> that displays a virtual keyboard for text input.</li>
|