CC-2166: Packaging Improvements. Moved the Zend app into airtime_mvc. It is now installed to /var/www/airtime. Storage is now set to /srv/airtime/stor. Utils are now installed to /usr/lib/airtime/utils/. Added install/airtime-dircheck.php as a simple test to see if everything is install/uninstalled correctly.
This commit is contained in:
parent
514777e8d2
commit
b11cbd8159
4546 changed files with 138 additions and 51 deletions
62
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/book.schema.xml
vendored
Normal file
62
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/book.schema.xml
vendored
Normal file
|
@ -0,0 +1,62 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<!DOCTYPE database SYSTEM "../dtd/database.dtd">
|
||||
|
||||
<database package="core.book" name="bookstore" defaultIdMethod="native">
|
||||
<external-schema filename="external/author.schema.xml" />
|
||||
<table name="book" description="Book Table">
|
||||
<behavior name="auto_add_pk" />
|
||||
<column
|
||||
name="title"
|
||||
required="true"
|
||||
type="VARCHAR"
|
||||
size="255"
|
||||
description="Book Title"/>
|
||||
<column
|
||||
name="isbn"
|
||||
required="true"
|
||||
type="VARCHAR"
|
||||
size="24"
|
||||
phpName="ISBN"
|
||||
description="ISBN Number"/>
|
||||
<column
|
||||
name="publisher_id"
|
||||
required="false"
|
||||
type="INTEGER"
|
||||
description="Foreign Key Publisher"/>
|
||||
<column
|
||||
name="author_id"
|
||||
required="false"
|
||||
type="INTEGER"
|
||||
description="Foreign Key Author"/>
|
||||
<foreign-key foreignTable="publisher" onDelete="SETNULL">
|
||||
<reference
|
||||
local="publisher_id"
|
||||
foreign="id"/>
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="author" onDelete="SETNULL">
|
||||
<reference
|
||||
local="author_id"
|
||||
foreign="id"/>
|
||||
</foreign-key>
|
||||
<validator column="title" translate="none">
|
||||
<rule
|
||||
name="unique"
|
||||
message="Book title already in database." />
|
||||
<rule
|
||||
name="minLength"
|
||||
value="10"
|
||||
message="Book title must be more than ${value} characters long."/>
|
||||
<rule
|
||||
name="maxLength"
|
||||
value="255"
|
||||
message="Book title must not be longer than ${value} characters."/>
|
||||
</validator>
|
||||
<validator column="isbn" translate="none">
|
||||
<rule
|
||||
name="notMatch"
|
||||
value="/[^\d-]+/"
|
||||
message="The ISBN contains invalid characters." />
|
||||
</validator>
|
||||
</table>
|
||||
|
||||
</database>
|
42
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/book_club_list.schema.xml
vendored
Normal file
42
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/book_club_list.schema.xml
vendored
Normal file
|
@ -0,0 +1,42 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<!DOCTYPE database SYSTEM "../dtd/database.dtd">
|
||||
|
||||
<database package="addon.club" name="bookstore" defaultIdMethod="native">
|
||||
|
||||
<!-- this table exists to test the many-to-many -->
|
||||
<table name="book_club_list" description="Reading list for a book club.">
|
||||
<behavior name="auto_add_pk" />
|
||||
<column
|
||||
name="group_leader"
|
||||
required="true"
|
||||
type="VARCHAR"
|
||||
size="100"
|
||||
description="The name of the teacher in charge of summer reading."/>
|
||||
<column
|
||||
name="theme"
|
||||
required="false"
|
||||
type="VARCHAR"
|
||||
size="50"
|
||||
description="The theme, if applicable, for the reading list."/>
|
||||
</table>
|
||||
|
||||
<table name="book_x_list" phpName="BookListRel" description="Cross-reference table for many-to-many relationship between book rows and book_club_list rows.">
|
||||
<column
|
||||
name="book_id"
|
||||
primaryKey="true"
|
||||
type="INTEGER"
|
||||
description="Fkey to book.id"/>
|
||||
<column
|
||||
name="book_club_list_id"
|
||||
primaryKey="true"
|
||||
type="INTEGER"
|
||||
description="Fkey to book_club_list.id"/>
|
||||
<foreign-key foreignTable="book" onDelete="CASCADE">
|
||||
<reference local="book_id" foreign="id"/>
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="book_club_list" onDelete="CASCADE">
|
||||
<reference local="book_club_list_id" foreign="id"/>
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
</database>
|
19
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/build.properties
vendored
Normal file
19
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/build.properties
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
# $Id: build.properties 1756 2010-05-10 08:54:06Z francois $
|
||||
#
|
||||
# This is a project-specific build.properties file. The properties
|
||||
# in this file override anything set in Propel's top-level build.properties
|
||||
# file when *this* project is being built.
|
||||
#
|
||||
# See top-level build.properties-sample for explanation of configuration
|
||||
# options.
|
||||
#
|
||||
# Because this file is included before the top-level build.properties file,
|
||||
# you cannot refer to any properties set therein.
|
||||
|
||||
propel.project = bookstore-packaged
|
||||
propel.database = sqlite
|
||||
propel.database.url = sqlite://localhost/./test/@DB@.db
|
||||
# propel.database.createUrl = (doesn't aply for SQLite, since db is auto-created)
|
||||
|
||||
propel.targetPackage = bookstore-packaged
|
||||
propel.packageObjectModel = true
|
53
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/external/author.schema.xml
vendored
Normal file
53
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/external/author.schema.xml
vendored
Normal file
|
@ -0,0 +1,53 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<!DOCTYPE database SYSTEM "../dtd/database.dtd">
|
||||
|
||||
<database package="core.author" name="bookstore" defaultIdMethod="native">
|
||||
|
||||
<table name="author" description="Author Table">
|
||||
<behavior name="auto_add_pk" />
|
||||
<column
|
||||
name="first_name"
|
||||
required="true"
|
||||
type="VARCHAR"
|
||||
size="128"
|
||||
description="First Name"/>
|
||||
<column
|
||||
name="last_name"
|
||||
required="true"
|
||||
type="VARCHAR"
|
||||
size="128"
|
||||
description="Last Name"/>
|
||||
<column
|
||||
name="email"
|
||||
type="VARCHAR"
|
||||
size="128"
|
||||
description="E-Mail Address"/>
|
||||
<column
|
||||
name="age"
|
||||
type="INTEGER"
|
||||
description="The authors age"/>
|
||||
<validator column="last_name" translate="none">
|
||||
<rule
|
||||
name="required"
|
||||
message="The last name field is required."/>
|
||||
</validator>
|
||||
<validator column="email" translate="none">
|
||||
<rule
|
||||
name="match"
|
||||
value="/^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9])+(\.[a-zA-Z0-9_-]+)+$/"
|
||||
message="Please enter a valid email address."/>
|
||||
</validator>
|
||||
<validator column="age" translate="none">
|
||||
<rule
|
||||
name="minValue"
|
||||
value="0"
|
||||
message="Please enter a positive number." />
|
||||
<rule
|
||||
name="maxValue"
|
||||
value="100"
|
||||
message="Impressive age! Just kidding, hm?" />
|
||||
</validator>
|
||||
|
||||
</table>
|
||||
|
||||
</database>
|
31
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/log.schema.xml
vendored
Normal file
31
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/log.schema.xml
vendored
Normal file
|
@ -0,0 +1,31 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<!DOCTYPE database SYSTEM "../dtd/database.dtd">
|
||||
|
||||
<database package="util.log" name="bookstore-log" defaultIdMethod="native">
|
||||
|
||||
<table name="log" phpName="BookstoreLog" description="Used to test multiple databases support">
|
||||
<behavior name="auto_add_pk" />
|
||||
<column
|
||||
name="time"
|
||||
required="true"
|
||||
type="TIMESTAMP"
|
||||
description="Log time"/>
|
||||
<column
|
||||
name="ident"
|
||||
required="true"
|
||||
type="CHAR"
|
||||
size="24"
|
||||
description="Log priority"/>
|
||||
<column
|
||||
name="priority"
|
||||
required="true"
|
||||
type="INTEGER"
|
||||
description="Log priority"/>
|
||||
<column
|
||||
name="message"
|
||||
required="true"
|
||||
type="LONGVARCHAR"
|
||||
description="Log message"/>
|
||||
</table>
|
||||
|
||||
</database>
|
31
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/media.schema.xml
vendored
Normal file
31
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/media.schema.xml
vendored
Normal file
|
@ -0,0 +1,31 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<!DOCTYPE database SYSTEM "../dtd/database.dtd">
|
||||
|
||||
<database package="core.book" name="bookstore" defaultIdMethod="native">
|
||||
|
||||
<!-- This table exists to explore/test the handling of BLOB/CLOB objects. -->
|
||||
<table name="media">
|
||||
<behavior name="auto_add_pk" />
|
||||
<column
|
||||
name="cover_image"
|
||||
type="BLOB"
|
||||
lazyLoad="true"
|
||||
description="The image of the book cover."/>
|
||||
<column
|
||||
name="excerpt"
|
||||
type="CLOB"
|
||||
lazyLoad="true"
|
||||
description="An excerpt from the book."/>
|
||||
<column
|
||||
name="book_id"
|
||||
required="true"
|
||||
type="INTEGER"
|
||||
description="Book ID for this media collection."/>
|
||||
<foreign-key foreignTable="book" onDelete="CASCADE">
|
||||
<reference
|
||||
local="book_id"
|
||||
foreign="id"/>
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
</database>
|
17
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/publisher.schema.xml
vendored
Normal file
17
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/publisher.schema.xml
vendored
Normal file
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<!DOCTYPE database SYSTEM "../dtd/database.dtd">
|
||||
|
||||
<database package="core.publisher" name="bookstore" defaultIdMethod="native">
|
||||
|
||||
<table name="publisher" description="Publisher Table">
|
||||
<behavior name="auto_add_pk" />
|
||||
<column
|
||||
name="name"
|
||||
required="true"
|
||||
type="VARCHAR"
|
||||
size="128"
|
||||
default="Penguin"
|
||||
description="Publisher Name"/>
|
||||
</table>
|
||||
|
||||
</database>
|
53
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/review.schema.xml
vendored
Normal file
53
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/review.schema.xml
vendored
Normal file
|
@ -0,0 +1,53 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<!DOCTYPE database SYSTEM "../dtd/database.dtd">
|
||||
|
||||
<database package="core.review" name="bookstore" defaultIdMethod="native">
|
||||
|
||||
<table name="review" description="Book Review">
|
||||
<behavior name="auto_add_pk" />
|
||||
<column
|
||||
name="reviewed_by"
|
||||
required="true"
|
||||
type="VARCHAR"
|
||||
size="128"
|
||||
description="Reviewer Name"/>
|
||||
<column
|
||||
name="review_date"
|
||||
required="true"
|
||||
type="DATE"
|
||||
default="01/01/2001"
|
||||
description="Date of Review"/>
|
||||
<column
|
||||
name="recommended"
|
||||
required="true"
|
||||
type="BOOLEAN"
|
||||
description="Does reviewer recommend book?"/>
|
||||
<column
|
||||
name="status"
|
||||
type="VARCHAR"
|
||||
size="8"
|
||||
description="The status of this review."/>
|
||||
<column
|
||||
name="book_id"
|
||||
required="true"
|
||||
type="INTEGER"
|
||||
description="Book ID for this review"/>
|
||||
<foreign-key foreignTable="book" onDelete="CASCADE">
|
||||
<reference
|
||||
local="book_id"
|
||||
foreign="id"/>
|
||||
</foreign-key>
|
||||
<validator column="reviewed_by" translate="none">
|
||||
<rule
|
||||
name="required"
|
||||
message="The reviewed by field is required."/>
|
||||
</validator>
|
||||
<validator column="status" translate="none">
|
||||
<rule
|
||||
name="validValues"
|
||||
value="new|reviewed|archived"
|
||||
message="Invalid status. (new, reviewed, archived)" />
|
||||
</validator>
|
||||
</table>
|
||||
|
||||
</database>
|
66
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/runtime-conf.xml
vendored
Normal file
66
airtime_mvc/library/propel/test/fixtures/bookstore-packaged/runtime-conf.xml
vendored
Normal file
|
@ -0,0 +1,66 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!-- This new XML configuration format is the default format for properties
|
||||
files. You can also used the old INI-based .properties format, but
|
||||
support for this will be removed in next major Propel version. -->
|
||||
|
||||
<config>
|
||||
<!--
|
||||
#
|
||||
# L O G G I N G
|
||||
#
|
||||
# We use PEAR-compatible Log for all Propel logging and we embed the
|
||||
# log conf properties within our application configuration.
|
||||
#
|
||||
# type - the type of log (default 'file')
|
||||
# name - the name of log or path to file. (default './propel.log')
|
||||
# ident - the text used to identify the log messages
|
||||
# level - the log level
|
||||
# PEAR_LOG_EMERG 0
|
||||
# PEAR_LOG_ALERT 1
|
||||
# PEAR_LOG_CRIT 2
|
||||
# PEAR_LOG_ERR 3
|
||||
# PEAR_LOG_WARNING 4
|
||||
# PEAR_LOG_NOTICE 5
|
||||
# PEAR_LOG_INFO 6
|
||||
# PEAR_LOG_DEBUG 7 <== DEFAULT
|
||||
-->
|
||||
<log>
|
||||
<ident>propel-bookstore-packaged</ident>
|
||||
<level>7</level>
|
||||
</log>
|
||||
<!--
|
||||
#
|
||||
# P R O P E L P R O P E R T I E S
|
||||
#
|
||||
# Note that you can configure multiple datasources; for example if your
|
||||
# project uses several databases.
|
||||
-->
|
||||
<propel>
|
||||
<datasources default="bookstore-packaged">
|
||||
<datasource id="bookstore">
|
||||
<!-- the Propel adapter (usually same as phptype of connection DSN) -->
|
||||
<adapter>sqlite</adapter>
|
||||
<!-- Connection DSN. See PEAR DSN format for other supported parameters. -->
|
||||
<connection>
|
||||
<phptype>sqlite</phptype>
|
||||
<hostspec>localhost</hostspec>
|
||||
<database>./bookstore.db</database>
|
||||
<username></username>
|
||||
<password></password>
|
||||
</connection>
|
||||
</datasource>
|
||||
<datasource id="bookstore-log">
|
||||
<!-- the Propel adapter (usually same as phptype of connection DSN) -->
|
||||
<adapter>sqlite</adapter>
|
||||
<!-- Connection DSN. See PEAR DSN format for other supported parameters. -->
|
||||
<connection>
|
||||
<phptype>sqlite</phptype>
|
||||
<hostspec>localhost</hostspec>
|
||||
<database>./bookstore-log.db</database>
|
||||
<username></username>
|
||||
<password></password>
|
||||
</connection>
|
||||
</datasource>
|
||||
</datasources>
|
||||
</propel>
|
||||
</config>
|
39
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-aggregate-schema.xml
vendored
Normal file
39
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-aggregate-schema.xml
vendored
Normal file
|
@ -0,0 +1,39 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore-behavior" defaultIdMethod="native" package="behavior.aggregate">
|
||||
|
||||
<table name="aggregate_post" phpName="AggregatePost">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<behavior name="aggregate_column">
|
||||
<parameter name="name" value="nb_comments" />
|
||||
<parameter name="expression" value="COUNT(id)" />
|
||||
<parameter name="foreign_table" value="aggregate_comment" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
<table name="aggregate_comment" phpName="AggregateComment">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="post_id" type="INTEGER" />
|
||||
<foreign-key foreignTable="aggregate_post" onDelete="setnull" onUpdate="cascade">
|
||||
<reference local="post_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<table name="aggregate_poll" phpName="AggregatePoll">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<behavior name="aggregate_column">
|
||||
<parameter name="name" value="total_score" />
|
||||
<parameter name="expression" value="SUM(score)" />
|
||||
<parameter name="foreign_table" value="aggregate_item" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
<table name="aggregate_item" phpName="AggregateItem">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="score" defaultValue="0" type="INTEGER" />
|
||||
<column name="poll_id" type="INTEGER" />
|
||||
<foreign-key foreignTable="aggregate_poll" onDelete="setnull" onUpdate="cascade">
|
||||
<reference local="poll_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
</database>
|
28
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-auto-add-pk-schema.xml
vendored
Normal file
28
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-auto-add-pk-schema.xml
vendored
Normal file
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore-behavior" defaultIdMethod="native" package="behavior.auto_add_pk">
|
||||
|
||||
<table name="table6">
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<behavior name="auto_add_pk" />
|
||||
</table>
|
||||
|
||||
<table name="table7">
|
||||
<column name="foo" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<behavior name="auto_add_pk" />
|
||||
</table>
|
||||
|
||||
<table name="table8">
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<column name="foo_id" type="INTEGER" required="false"/>
|
||||
<foreign-key foreignTable="table6" onDelete="setnull">
|
||||
<reference local="foo_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<behavior name="auto_add_pk">
|
||||
<parameter name="name" value="identifier" />
|
||||
<parameter name="autoIncrement" value="false" />
|
||||
<parameter name="type" value="BIGINT" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
</database>
|
69
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-concrete-inheritance-schema.xml
vendored
Normal file
69
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-concrete-inheritance-schema.xml
vendored
Normal file
|
@ -0,0 +1,69 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore-behavior" defaultIdMethod="native" package="behavior.concrete_inheritance">
|
||||
|
||||
<table name="concrete_category">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="name" type="VARCHAR" size="100" primaryString="true" />
|
||||
</table>
|
||||
|
||||
<table name="concrete_content">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<column name="category_id" required="false" type="INTEGER" />
|
||||
<foreign-key foreignTable="concrete_category" onDelete="cascade">
|
||||
<reference local="category_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<index>
|
||||
<index-column name="title" />
|
||||
</index>
|
||||
<validator column="title" translate="none">
|
||||
<rule name="maxLength" value="100" message="Content title must not be longer than ${value} characters." />
|
||||
</validator>
|
||||
|
||||
</table>
|
||||
|
||||
<table name="concrete_article">
|
||||
<column name="body" type="longvarchar" />
|
||||
<column name="author_id" required="false" type="INTEGER" />
|
||||
<foreign-key foreignTable="concrete_author" refPhpName="Article" onDelete="cascade">
|
||||
<reference local="author_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<behavior name="concrete_inheritance">
|
||||
<parameter name="extends" value="concrete_content" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
<table name="concrete_author">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="name" type="VARCHAR" size="100" primaryString="true" />
|
||||
</table>
|
||||
|
||||
|
||||
<table name="concrete_news">
|
||||
<behavior name="concrete_inheritance">
|
||||
<parameter name="extends" value="concrete_article" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
<table name="concrete_quizz">
|
||||
<column name="title" type="VARCHAR" size="200" primaryString="true" />
|
||||
<behavior name="concrete_inheritance">
|
||||
<parameter name="extends" value="concrete_content" />
|
||||
<parameter name="copy_data_to_parent" value="false" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
<table name="concrete_quizz_question">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="question" type="VARCHAR" size="100" primaryString="true" />
|
||||
<column name="answer_1" type="VARCHAR" size="100" />
|
||||
<column name="answer_2" type="VARCHAR" size="100" />
|
||||
<column name="correct_answer" type="INTEGER" />
|
||||
<column name="quizz_id" required="true" type="INTEGER" />
|
||||
<foreign-key foreignTable="concrete_quizz" onDelete="cascade">
|
||||
<reference local="quizz_id" foreign="id" />
|
||||
</foreign-key>
|
||||
|
||||
</table>
|
||||
|
||||
</database>
|
27
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-nested-set-schema.xml
vendored
Normal file
27
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-nested-set-schema.xml
vendored
Normal file
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore-behavior" defaultIdMethod="native" package="behavior.nested_set">
|
||||
|
||||
<table name="table9">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<behavior name="nested_set" />
|
||||
</table>
|
||||
|
||||
<table name="table10">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<column name="my_left_column" type="INTEGER" required="false"/>
|
||||
<column name="my_right_column" type="INTEGER" required="false"/>
|
||||
<column name="my_level_column" type="INTEGER" required="false"/>
|
||||
<column name="my_scope_column" type="INTEGER" required="false"/>
|
||||
<behavior name="nested_set">
|
||||
<parameter name="left_column" value="my_left_column" />
|
||||
<parameter name="right_column" value="my_right_column" />
|
||||
<parameter name="level_column" value="my_level_column" />
|
||||
<parameter name="use_scope" value="true" />
|
||||
<parameter name="scope_column" value="my_scope_column" />
|
||||
<parameter name="method_proxies" value="true" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
</database>
|
15
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-schema.xml
vendored
Normal file
15
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-schema.xml
vendored
Normal file
|
@ -0,0 +1,15 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore-behavior" defaultIdMethod="native" package="behavior.alternative_coding_standards">
|
||||
|
||||
<behavior name="do_nothing">
|
||||
<parameter name="foo" value="bar" />
|
||||
</behavior>
|
||||
|
||||
<table name="table3">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<behavior name="test_all_hooks" />
|
||||
<behavior name="alternative_coding_standards" />
|
||||
</table>
|
||||
|
||||
</database>
|
23
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-sluggable-schema.xml
vendored
Normal file
23
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-sluggable-schema.xml
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore-behavior" defaultIdMethod="native" package="behavior.sluggable">
|
||||
|
||||
<table name="table13">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<behavior name="sluggable" />
|
||||
</table>
|
||||
|
||||
<table name="table14">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<column name="url" type="VARCHAR" size="100"/>
|
||||
<behavior name="sluggable">
|
||||
<parameter name="slug_column" value="url" />
|
||||
<parameter name="slug_pattern" value="/foo/{Title}/bar" />
|
||||
<parameter name="replace_pattern" value="/[^\w\/]+/" />
|
||||
<parameter name="separator" value="/" />
|
||||
<parameter name="permanent" value="true" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
</database>
|
19
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-soft-delete-schema.xml
vendored
Normal file
19
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-soft-delete-schema.xml
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore-behavior" defaultIdMethod="native" package="behavior.soft_delete">
|
||||
|
||||
<table name="table4">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<behavior name="soft_delete" />
|
||||
</table>
|
||||
|
||||
<table name="table5">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<column name="deleted_on" type="TIMESTAMP" />
|
||||
<behavior name="soft_delete">
|
||||
<parameter name="deleted_column" value="deleted_on" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
</database>
|
21
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-sortable-schema.xml
vendored
Normal file
21
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-sortable-schema.xml
vendored
Normal file
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore-behavior" defaultIdMethod="native" package="behavior.sortable">
|
||||
|
||||
<table name="table11">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<behavior name="sortable" />
|
||||
</table>
|
||||
|
||||
<table name="table12">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<column name="position" type="INTEGER" />
|
||||
<behavior name="sortable">
|
||||
<parameter name="rank_column" value="position" />
|
||||
<parameter name="use_scope" value="true" />
|
||||
<parameter name="scope_column" value="my_scope_column" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
</database>
|
21
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-timestampable-schema.xml
vendored
Normal file
21
airtime_mvc/library/propel/test/fixtures/bookstore/behavior-timestampable-schema.xml
vendored
Normal file
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore-behavior" defaultIdMethod="native" package="behavior.timestampable">
|
||||
|
||||
<table name="table1">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<column name="created_on" type="TIMESTAMP" />
|
||||
<column name="updated_on" type="TIMESTAMP" />
|
||||
<behavior name="timestampable">
|
||||
<parameter name="create_column" value="created_on" />
|
||||
<parameter name="update_column" value="updated_on" />
|
||||
</behavior>
|
||||
</table>
|
||||
|
||||
<table name="table2">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" size="100" primaryString="true" />
|
||||
<behavior name="timestampable" />
|
||||
</table>
|
||||
|
||||
</database>
|
35
airtime_mvc/library/propel/test/fixtures/bookstore/build.properties
vendored
Normal file
35
airtime_mvc/library/propel/test/fixtures/bookstore/build.properties
vendored
Normal file
|
@ -0,0 +1,35 @@
|
|||
# $Id: build.properties 1688 2010-04-19 20:23:27Z francois $
|
||||
#
|
||||
# This is a project-specific build.properties file. The properties
|
||||
# in this file override anything set in Propel's top-level build.properties
|
||||
# file when *this* project is being built.
|
||||
#
|
||||
# See top-level build.properties-sample for explanation of configuration
|
||||
# options.
|
||||
#
|
||||
# Because this file is included before the top-level build.properties file,
|
||||
# you cannot refer to any properties set therein.
|
||||
|
||||
propel.project = bookstore
|
||||
propel.database = mysql
|
||||
propel.database.url = mysql:dbname=test
|
||||
propel.mysqlTableType = InnoDB
|
||||
propel.disableIdentifierQuoting=true
|
||||
|
||||
# For MySQL or Oracle, you also need to specify username & password
|
||||
#propel.database.user = [db username]
|
||||
#propel.database.password = [db password]
|
||||
|
||||
# Note that if you do not wish to specify the database (e.g. if you
|
||||
# are using multiple databses) you can use the @DB@ token which
|
||||
# will be replaced with a database at runtime.
|
||||
# E.g.: propel.database.url = sqlite://localhost/./test/@DB@.db
|
||||
# This will work for the datadump and the insert-sql tasks.
|
||||
|
||||
# propel.database.createUrl = (doesn't apply for SQLite, since db is auto-created)
|
||||
|
||||
propel.targetPackage = bookstore
|
||||
|
||||
# We need to test behavior hooks
|
||||
propel.behavior.test_all_hooks.class = ../test.tools.helpers.bookstore.behavior.Testallhooksbehavior
|
||||
propel.behavior.do_nothing.class = ../test.tools.helpers.bookstore.behavior.DonothingBehavior
|
19
airtime_mvc/library/propel/test/fixtures/bookstore/cms-schema.xml
vendored
Normal file
19
airtime_mvc/library/propel/test/fixtures/bookstore/cms-schema.xml
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<database name="bookstore-cms" defaultPhpNamingMethod="nochange" package="cms">
|
||||
|
||||
<table name="Page" idMethod="native" treeMode="NestedSet">
|
||||
<column name="Id" type="INTEGER" required="true" autoIncrement="true" primaryKey="true"/>
|
||||
<column name="LeftChild" type="INTEGER" required="true" nestedSetLeftKey="true"/>
|
||||
<column name="RightChild" type="INTEGER" required="true" nestedSetRightKey="true"/>
|
||||
<column name="ScopeId" type="INTEGER" required="true" default="0" treeScopeKey="true"/>
|
||||
<column name="Title" type="VARCHAR" size="255" />
|
||||
</table>
|
||||
|
||||
<table name="Category" idMethod="native" treeMode="NestedSet">
|
||||
<column name="Id" type="INTEGER" required="true" autoIncrement="true" primaryKey="true"/>
|
||||
<column name="LeftChild" type="INTEGER" required="true" nestedSetLeftKey="true"/>
|
||||
<column name="RightChild" type="INTEGER" required="true" nestedSetRightKey="true"/>
|
||||
<column name="Title" type="VARCHAR" size="255" />
|
||||
</table>
|
||||
|
||||
</database>
|
125
airtime_mvc/library/propel/test/fixtures/bookstore/runtime-conf.xml
vendored
Normal file
125
airtime_mvc/library/propel/test/fixtures/bookstore/runtime-conf.xml
vendored
Normal file
|
@ -0,0 +1,125 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<config>
|
||||
<!--
|
||||
#
|
||||
# L O G G I N G
|
||||
#
|
||||
# We use PEAR-compatible Log for all Propel logging and we embed the
|
||||
# log conf properties within our application configuration.
|
||||
#
|
||||
# type - the type of log (default 'file')
|
||||
# name - the name of log or path to file. (default './propel.log')
|
||||
# ident - the text used to identify the log messages
|
||||
# level - the log level
|
||||
# PEAR_LOG_EMERG 0
|
||||
# PEAR_LOG_ALERT 1
|
||||
# PEAR_LOG_CRIT 2
|
||||
# PEAR_LOG_ERR 3
|
||||
# PEAR_LOG_WARNING 4
|
||||
# PEAR_LOG_NOTICE 5
|
||||
# PEAR_LOG_INFO 6
|
||||
# PEAR_LOG_DEBUG 7
|
||||
#
|
||||
# Note that if you omit the <log> config section, Propel will not attempt to
|
||||
# configure a logger, and you will need to specify one manually using
|
||||
# Propel::setLogger() if you want Propel to log debug or error messages.
|
||||
-->
|
||||
<log>
|
||||
<ident>propel-bookstore</ident>
|
||||
<name>propel.log</name>
|
||||
<level>7</level>
|
||||
</log>
|
||||
<!--
|
||||
#
|
||||
# P R O P E L P R O P E R T I E S
|
||||
#
|
||||
# Note that you can configure multiple datasources; for example if your
|
||||
# project uses several databases.
|
||||
-->
|
||||
<propel>
|
||||
<datasources default="bookstore">
|
||||
<datasource id="bookstore">
|
||||
|
||||
<!-- the Propel adapter to use for this connection -->
|
||||
<adapter>mysql</adapter>
|
||||
<!-- Connection parameters. See PDO documentation for DSN format and available option constants. -->
|
||||
<connection>
|
||||
<classname>DebugPDO</classname>
|
||||
<dsn>mysql:dbname=test</dsn>
|
||||
<!--
|
||||
For MySQL and Oracle you must specify username + password separate from DSN:
|
||||
<user>bookstore</user>
|
||||
<password></password>
|
||||
-->
|
||||
<options>
|
||||
<option id="ATTR_PERSISTENT">false</option>
|
||||
</options>
|
||||
|
||||
<attributes>
|
||||
<!--
|
||||
For MySQL, you should also turn on prepared statement emulation,
|
||||
as prepared statements support is buggy in mysql driver
|
||||
-->
|
||||
<option id="ATTR_EMULATE_PREPARES">true</option>
|
||||
</attributes>
|
||||
|
||||
<settings>
|
||||
<!-- Set the character set for client connection -->
|
||||
<setting id="charset">utf8</setting>
|
||||
<!-- you can also execute arbitrary queries after the connection is created
|
||||
<setting id="queries">
|
||||
<query>SELECT * FROM foo</query>
|
||||
<query>INSERT INTO BAR ('hey', 'there')</query>
|
||||
</setting>
|
||||
-->
|
||||
</settings>
|
||||
</connection>
|
||||
</datasource>
|
||||
|
||||
<datasource id="bookstore-cms">
|
||||
<adapter>mysql</adapter>
|
||||
<connection>
|
||||
<classname>DebugPDO</classname>
|
||||
<dsn>mysql:dbname=test</dsn>
|
||||
<!--
|
||||
For MySQL and Oracle you must specify username + password separate from DSN:
|
||||
<user>bookstore</user>
|
||||
<password></password>
|
||||
-->
|
||||
<options>
|
||||
<option id="ATTR_PERSISTENT">false</option>
|
||||
</options>
|
||||
<attributes>
|
||||
<option id="ATTR_EMULATE_PREPARES">true</option>
|
||||
</attributes>
|
||||
<settings>
|
||||
<setting id="charset">utf8</setting>
|
||||
</settings>
|
||||
</connection>
|
||||
</datasource>
|
||||
|
||||
<datasource id="bookstore-behavior">
|
||||
<adapter>mysql</adapter>
|
||||
<connection>
|
||||
<classname>DebugPDO</classname>
|
||||
<dsn>mysql:dbname=test</dsn>
|
||||
<!--
|
||||
For MySQL and Oracle you must specify username + password separate from DSN:
|
||||
<user>bookstore</user>
|
||||
<password></password>
|
||||
-->
|
||||
<options>
|
||||
<option id="ATTR_PERSISTENT">false</option>
|
||||
</options>
|
||||
<attributes>
|
||||
<option id="ATTR_EMULATE_PREPARES">true</option>
|
||||
</attributes>
|
||||
<settings>
|
||||
<setting id="charset">utf8</setting>
|
||||
</settings>
|
||||
</connection>
|
||||
</datasource>
|
||||
|
||||
</datasources>
|
||||
</propel>
|
||||
</config>
|
320
airtime_mvc/library/propel/test/fixtures/bookstore/schema.xml
vendored
Normal file
320
airtime_mvc/library/propel/test/fixtures/bookstore/schema.xml
vendored
Normal file
|
@ -0,0 +1,320 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore" defaultIdMethod="native"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="../../../generator/resources/xsd/database.xsd">
|
||||
|
||||
<table name="book" description="Book Table">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Book Id" />
|
||||
<column name="title" type="VARCHAR" required="true" description="Book Title" primaryString="true" />
|
||||
<column name="isbn" required="true" type="VARCHAR" size="24" phpName="ISBN" description="ISBN Number" />
|
||||
<column name="price" required="false" type="FLOAT" description="Price of the book." />
|
||||
<column name="publisher_id" required="false" type="INTEGER" description="Foreign Key Publisher" />
|
||||
<column name="author_id" required="false" type="INTEGER" description="Foreign Key Author" />
|
||||
<foreign-key foreignTable="publisher" onDelete="setnull">
|
||||
<reference local="publisher_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="author" onDelete="setnull" onUpdate="cascade">
|
||||
<reference local="author_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<validator column="title" translate="none">
|
||||
<rule name="unique" message="Book title already in database." />
|
||||
<rule name="minLength" value="10" message="Book title must be more than ${value} characters long." />
|
||||
<rule name="maxLength" value="255" message="Book title must not be longer than ${value} characters." />
|
||||
</validator>
|
||||
<validator column="isbn" translate="none">
|
||||
<rule name="class" class="bookstore.validator.ISBNValidator" message="ISBN does not validate!"/>
|
||||
</validator>
|
||||
</table>
|
||||
|
||||
<table name="publisher" description="Publisher Table">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Publisher Id" />
|
||||
<column name="name" required="true" type="VARCHAR" size="128" default="Penguin" description="Publisher Name" />
|
||||
</table>
|
||||
|
||||
<table name="author" description="Author Table">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Author Id" />
|
||||
<column name="first_name" required="true" type="VARCHAR" size="128" description="First Name" />
|
||||
<column name="last_name" required="true" type="VARCHAR" size="128" description="Last Name" />
|
||||
<column name="email" type="VARCHAR" size="128" description="E-Mail Address" />
|
||||
<column name="age" type="INTEGER" description="The authors age" />
|
||||
<validator column="last_name" translate="none">
|
||||
<rule name="required" message="The last name field is required." />
|
||||
</validator>
|
||||
<validator column="email" translate="none">
|
||||
<rule name="match" value="/^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9])+(\.[a-zA-Z0-9_-]+)+$/" message="Please enter a valid email address." />
|
||||
</validator>
|
||||
<validator column="age" translate="none">
|
||||
<rule name="minValue" value="0" message="Please enter a positive number." />
|
||||
<rule name="maxValue" value="100" message="Impressive age! Just kidding, hm?" />
|
||||
</validator>
|
||||
</table>
|
||||
|
||||
<table name="review" description="Book Review">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Author Id" />
|
||||
<column name="reviewed_by" required="true" type="VARCHAR" size="128" description="Reviewer Name" />
|
||||
<column name="review_date" required="true" type="DATE" default="2001-01-01" description="Date of Review" />
|
||||
<column name="recommended" required="true" type="BOOLEAN" description="Does reviewer recommend book?" />
|
||||
<column name="status" type="VARCHAR" size="8" description="The status of this review." />
|
||||
<column name="book_id" required="true" type="INTEGER" description="Book ID for this review" />
|
||||
<foreign-key foreignTable="book" onDelete="cascade">
|
||||
<reference local="book_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<validator column="reviewed_by" translate="none">
|
||||
<rule name="required" message="The reviewed by field is required." />
|
||||
</validator>
|
||||
<validator column="status" translate="none">
|
||||
<rule name="validValues" value="new|reviewed|archived" message="Invalid status. (new, reviewed, archived)" />
|
||||
</validator>
|
||||
</table>
|
||||
|
||||
<!-- This table exists to test the related setters on identical table ("relatedByXXX" issues) and column phpNames -->
|
||||
<table name="essay" package="relation">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" required="true" primaryString="true" />
|
||||
<column name="first_author" required="false" type="INTEGER" description="Foreign Key Author" />
|
||||
<column name="second_author" required="false" type="INTEGER" description="Foreign Key Author" />
|
||||
<column name="subtitle" type="VARCHAR" phpName="SecondTitle" />
|
||||
<column name="next_essay_id" required="false" type="INTEGER" description="Book Id" />
|
||||
<foreign-key foreignTable="author" onDelete="setnull" onUpdate="cascade">
|
||||
<reference local="first_author" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="author" defaultJoin="INNER JOIN" onDelete="setnull" onUpdate="cascade">
|
||||
<reference local="second_author" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="essay" onDelete="setnull" onUpdate="cascade">
|
||||
<reference local="next_essay_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<!-- This table exists to test the related setters on identical table ("relatedByXXX" issues) when there is more than one self-referential foreign key -->
|
||||
<table name="composite_essay" package="relation">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="title" type="VARCHAR" required="true" primaryString="true" />
|
||||
<column name="first_essay_id" required="false" type="INTEGER" description="Book Id" />
|
||||
<column name="second_essay_id" required="false" type="INTEGER" description="Book Id" />
|
||||
<foreign-key foreignTable="composite_essay" onDelete="setnull" onUpdate="cascade">
|
||||
<reference local="first_essay_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="composite_essay" onDelete="setnull" onUpdate="cascade">
|
||||
<reference local="second_essay_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<!-- This table and the following exist to test the related setters ("relatedByXXX" issues) when two foreign keys exist on symmetrical tables -->
|
||||
<table name="man" package="relation">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true"/>
|
||||
<column name="wife_id" type="INTEGER"/>
|
||||
<foreign-key foreignTable="woman" onDelete="setnull">
|
||||
<reference local="wife_id" foreign="id"/>
|
||||
</foreign-key>
|
||||
|
||||
</table>
|
||||
<table name="woman" package="relation">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" required="true"/>
|
||||
<column name="husband_id" type="INTEGER"/>
|
||||
<foreign-key foreignTable="man">
|
||||
<reference local="husband_id" foreign="id"/>
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<!-- This table exists to explore/test the handling of BLOB/CLOB objects. -->
|
||||
<table name="media">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Media Id" />
|
||||
<column name="cover_image" type="BLOB" lazyLoad="true" description="The image of the book cover." />
|
||||
<column name="excerpt" type="CLOB" lazyLoad="true" description="An excerpt from the book." />
|
||||
<column name="book_id" required="true" type="INTEGER" description="Book ID for this media collection." />
|
||||
<foreign-key foreignTable="book" onDelete="cascade">
|
||||
<reference local="book_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<!-- test many-to-many relationships -->
|
||||
<table name="book_club_list" description="Reading list for a book club.">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Unique ID for a school reading list." />
|
||||
<column name="group_leader" required="true" type="VARCHAR" size="100" description="The name of the teacher in charge of summer reading." />
|
||||
<column name="theme" required="false" type="VARCHAR" size="50" description="The theme, if applicable, for the reading list." />
|
||||
</table>
|
||||
|
||||
<table name="book_x_list" phpName="BookListRel" isCrossRef="true"
|
||||
description="Cross-reference table for many-to-many relationship between book rows and book_club_list rows.">
|
||||
<column name="book_id" primaryKey="true" type="INTEGER" description="Fkey to book.id" />
|
||||
<column name="book_club_list_id" primaryKey="true" type="INTEGER" description="Fkey to book_club_list.id" />
|
||||
<foreign-key foreignTable="book" onDelete="cascade">
|
||||
<reference local="book_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="book_club_list" onDelete="cascade">
|
||||
<reference local="book_club_list_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<!-- test self-referencing foreign keys and inheritance-->
|
||||
<table name="bookstore_employee"
|
||||
description="Hierarchical table to represent employees of a bookstore.">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" description="Employee ID number" />
|
||||
<column name="class_key" type="INTEGER" required="true" default="0" inheritance="single">
|
||||
<inheritance key="0" class="BookstoreEmployee" />
|
||||
<inheritance key="1" class="BookstoreManager" extends="BookstoreEmployee" />
|
||||
<inheritance key="2" class="BookstoreCashier" extends="BookstoreEmployee" />
|
||||
</column>
|
||||
<column name="name" type="VARCHAR" size="32" description="Employee name" />
|
||||
<column name="job_title" type="VARCHAR" size="32" description="Employee job title" />
|
||||
<column name="supervisor_id" type="INTEGER" description="Fkey to supervisor." />
|
||||
<column name="photo" type="BLOB" lazyLoad="true" />
|
||||
<foreign-key foreignTable="bookstore_employee" phpName="Supervisor" refPhpName="Subordinate" onDelete="setnull">
|
||||
<reference local="supervisor_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<!-- Test one-to-one (1:1) relationship, default values -->
|
||||
<table name="bookstore_employee_account" reloadOnInsert="true" reloadOnUpdate="true" description="A table that represents a bookstore employees login credentials.">
|
||||
<column name="employee_id" type="INTEGER" primaryKey="true" description="Primary key for the account ..." />
|
||||
<column name="login" type="VARCHAR" size="32" />
|
||||
<column name="password" type="VARCHAR" size="100" default="'@''34"" />
|
||||
<column name="enabled" type="BOOLEAN" default="true" />
|
||||
<column name="not_enabled" type="BOOLEAN" default="false" />
|
||||
<column name="created" type="TIMESTAMP" defaultExpr="CURRENT_TIMESTAMP" />
|
||||
<column name="role_id" type="INTEGER" required="false" default="null" />
|
||||
<column name="authenticator" type="VARCHAR" size="32" defaultExpr="'Password'" />
|
||||
<foreign-key foreignTable="bookstore_employee" onDelete="cascade">
|
||||
<reference local="employee_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="acct_access_role" onDelete="setnull">
|
||||
<reference local="role_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<unique>
|
||||
<unique-column name="login" />
|
||||
</unique>
|
||||
</table>
|
||||
|
||||
<table name="acct_audit_log">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" />
|
||||
<column name="uid" type="VARCHAR" size="32" required="true" />
|
||||
<column name="message" type="VARCHAR" size="255" />
|
||||
<foreign-key foreignTable="bookstore_employee_account" onDelete="cascade">
|
||||
<reference local="uid" foreign="login" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<table name="acct_access_role">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" description="Role ID number" />
|
||||
<column name="name" type="VARCHAR" size="25" required="true" />
|
||||
</table>
|
||||
|
||||
<!-- book_reader, book_opinion, and reader_favorite test some foreign key issues
|
||||
(see: http://propel.phpdb.org/trac/ticket/228) -->
|
||||
<table name="book_reader">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" description="Book reader ID number" />
|
||||
<column name="name" type="VARCHAR" size="50" />
|
||||
</table>
|
||||
|
||||
<!-- Test composite primary keys -->
|
||||
<table name="book_opinion">
|
||||
<column name="book_id" type="INTEGER" primaryKey="true" />
|
||||
<column name="reader_id" type="INTEGER" primaryKey="true" />
|
||||
<column name="rating" type="DECIMAL" />
|
||||
<column name="recommend_to_friend" type="BOOLEAN" />
|
||||
<foreign-key foreignTable="book" onDelete="cascade">
|
||||
<reference local="book_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="book_reader" onDelete="cascade">
|
||||
<reference local="reader_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<!-- Test multiple foreign keys for a single column -->
|
||||
<table name="reader_favorite">
|
||||
<column name="book_id" type="INTEGER" primaryKey="true" />
|
||||
<column name="reader_id" type="INTEGER" primaryKey="true" />
|
||||
<foreign-key foreignTable="book" onDelete="cascade">
|
||||
<reference local="book_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="book_reader" onDelete="cascade">
|
||||
<reference local="reader_id" foreign="id" />
|
||||
</foreign-key>
|
||||
|
||||
<foreign-key foreignTable="book_opinion" onDelete="cascade">
|
||||
<reference local="book_id" foreign="book_id"/>
|
||||
<reference local="reader_id" foreign="reader_id"/>
|
||||
</foreign-key>
|
||||
|
||||
</table>
|
||||
|
||||
<!-- Test some custom php column types. -->
|
||||
<table name="bookstore">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" description="Book store ID number" />
|
||||
<column name="store_name" type="VARCHAR" size="50" required="true" />
|
||||
<column name="location" type="VARCHAR" size="100" />
|
||||
<column name="population_served" type="BIGINT" />
|
||||
<column name="total_books" type="INTEGER" />
|
||||
<column name="store_open_time" type="TIME" />
|
||||
<column name="website" type="VARCHAR" size="255"/>
|
||||
<validator column="website">
|
||||
<rule name="match" value="/^((ht|f)tp(s?)\:\/\/[a-zA-Z0-9\-\._]+(\.[a-zA-Z0-9\-\._]+){2,}(\/?)([a-zA-Z0-9\-\.\?\,'\/\\\+&amp;%\$#_]*)?$|$)/" message="wrong url"/>
|
||||
</validator>
|
||||
</table>
|
||||
|
||||
<!-- test default values on foreign keys, default expr w/ reloadOnUpdate="true" -->
|
||||
<table name="bookstore_sale" reloadOnUpdate="true">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" />
|
||||
<column name="bookstore_id" type="INTEGER" required="false" default="1" />
|
||||
<column name="publisher_id" type="INTEGER" required="false" />
|
||||
<column name="sale_name" type="VARCHAR" size="100" required="false" />
|
||||
<column name="discount" type="TINYINT" description="Discount percentage" defaultExpr="10" />
|
||||
<foreign-key foreignTable="bookstore" onDelete="cascade">
|
||||
<reference local="bookstore_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="publisher" onDelete="setnull">
|
||||
<reference local="publisher_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<table name="customer" allowPkInsert="true">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" />
|
||||
<column name="name" type="VARCHAR" size="255" />
|
||||
<column name="join_date" type="DATE" />
|
||||
</table>
|
||||
|
||||
<table name="contest">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" />
|
||||
<column name="name" type="VARCHAR" size="100" />
|
||||
</table>
|
||||
|
||||
<!-- Test Views (read-only tables) -->
|
||||
<table name="contest_view" readOnly="true">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" />
|
||||
<column name="name" type="VARCHAR" size="100" />
|
||||
</table>
|
||||
|
||||
<table name="bookstore_contest">
|
||||
<column name="bookstore_id" type="INTEGER" primaryKey="true" />
|
||||
<column name="contest_id" type="INTEGER" primaryKey="true" />
|
||||
<column name="prize_book_id" type="INTEGER" />
|
||||
<foreign-key foreignTable="bookstore" onDelete="cascade">
|
||||
<reference local="bookstore_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="contest" onDelete="cascade">
|
||||
<reference local="contest_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="book" onDelete="setnull" phpName="Work">
|
||||
<reference local="prize_book_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<table name="bookstore_contest_entry" reloadOnInsert="true">
|
||||
<column name="bookstore_id" type="INTEGER" primaryKey="true" />
|
||||
<column name="contest_id" type="INTEGER" primaryKey="true" />
|
||||
<column name="customer_id" type="INTEGER" primaryKey="true" />
|
||||
<column name="entry_date" type="TIMESTAMP" defaultExpr="CURRENT_TIMESTAMP" />
|
||||
<foreign-key foreignTable="bookstore" onDelete="cascade">
|
||||
<reference local="bookstore_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="customer" onDelete="cascade">
|
||||
<reference local="customer_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="bookstore_contest" onDelete="cascade">
|
||||
<reference local="bookstore_id" foreign="bookstore_id" />
|
||||
<reference local="contest_id" foreign="contest_id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
</database>
|
31
airtime_mvc/library/propel/test/fixtures/namespaced/build.properties
vendored
Normal file
31
airtime_mvc/library/propel/test/fixtures/namespaced/build.properties
vendored
Normal file
|
@ -0,0 +1,31 @@
|
|||
# $Id: build.properties 1688 2010-04-19 20:23:27Z francois $
|
||||
#
|
||||
# This is a project-specific build.properties file. The properties
|
||||
# in this file override anything set in Propel's top-level build.properties
|
||||
# file when *this* project is being built.
|
||||
#
|
||||
# See top-level build.properties-sample for explanation of configuration
|
||||
# options.
|
||||
#
|
||||
# Because this file is included before the top-level build.properties file,
|
||||
# you cannot refer to any properties set therein.
|
||||
|
||||
propel.project = bookstore_namespaced
|
||||
propel.database = mysql
|
||||
propel.database.url = mysql:dbname=test
|
||||
propel.mysqlTableType = InnoDB
|
||||
propel.disableIdentifierQuoting=true
|
||||
|
||||
# For MySQL or Oracle, you also need to specify username & password
|
||||
#propel.database.user = [db username]
|
||||
#propel.database.password = [db password]
|
||||
|
||||
# Note that if you do not wish to specify the database (e.g. if you
|
||||
# are using multiple databses) you can use the @DB@ token which
|
||||
# will be replaced with a database at runtime.
|
||||
# E.g.: propel.database.url = sqlite://localhost/./test/@DB@.db
|
||||
# This will work for the datadump and the insert-sql tasks.
|
||||
|
||||
# propel.database.createUrl = (doesn't apply for SQLite, since db is auto-created)
|
||||
|
||||
propel.targetPackage = bookstore
|
81
airtime_mvc/library/propel/test/fixtures/namespaced/runtime-conf.xml
vendored
Normal file
81
airtime_mvc/library/propel/test/fixtures/namespaced/runtime-conf.xml
vendored
Normal file
|
@ -0,0 +1,81 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<config>
|
||||
<!--
|
||||
#
|
||||
# L O G G I N G
|
||||
#
|
||||
# We use PEAR-compatible Log for all Propel logging and we embed the
|
||||
# log conf properties within our application configuration.
|
||||
#
|
||||
# type - the type of log (default 'file')
|
||||
# name - the name of log or path to file. (default './propel.log')
|
||||
# ident - the text used to identify the log messages
|
||||
# level - the log level
|
||||
# PEAR_LOG_EMERG 0
|
||||
# PEAR_LOG_ALERT 1
|
||||
# PEAR_LOG_CRIT 2
|
||||
# PEAR_LOG_ERR 3
|
||||
# PEAR_LOG_WARNING 4
|
||||
# PEAR_LOG_NOTICE 5
|
||||
# PEAR_LOG_INFO 6
|
||||
# PEAR_LOG_DEBUG 7
|
||||
#
|
||||
# Note that if you omit the <log> config section, Propel will not attempt to
|
||||
# configure a logger, and you will need to specify one manually using
|
||||
# Propel::setLogger() if you want Propel to log debug or error messages.
|
||||
-->
|
||||
<log>
|
||||
<ident>propel-bookstore</ident>
|
||||
<name>propel.log</name>
|
||||
<level>7</level>
|
||||
</log>
|
||||
<!--
|
||||
#
|
||||
# P R O P E L P R O P E R T I E S
|
||||
#
|
||||
# Note that you can configure multiple datasources; for example if your
|
||||
# project uses several databases.
|
||||
-->
|
||||
<propel>
|
||||
<datasources default="bookstore_namespaced">
|
||||
<datasource id="bookstore_namespaced">
|
||||
|
||||
<!-- the Propel adapter to use for this connection -->
|
||||
<adapter>mysql</adapter>
|
||||
<!-- Connection parameters. See PDO documentation for DSN format and available option constants. -->
|
||||
<connection>
|
||||
<classname>DebugPDO</classname>
|
||||
<dsn>mysql:dbname=test</dsn>
|
||||
<!--
|
||||
For MySQL and Oracle you must specify username + password separate from DSN:
|
||||
<user>bookstore</user>
|
||||
<password></password>
|
||||
-->
|
||||
<options>
|
||||
<option id="ATTR_PERSISTENT">false</option>
|
||||
</options>
|
||||
|
||||
<attributes>
|
||||
<!--
|
||||
For MySQL, you should also turn on prepared statement emulation,
|
||||
as prepared statements support is buggy in mysql driver
|
||||
-->
|
||||
<option id="ATTR_EMULATE_PREPARES">true</option>
|
||||
</attributes>
|
||||
|
||||
<settings>
|
||||
<!-- Set the character set for client connection -->
|
||||
<setting id="charset">utf8</setting>
|
||||
<!-- you can also execute arbitrary queries after the connection is created
|
||||
<setting id="queries">
|
||||
<query>SELECT * FROM foo</query>
|
||||
<query>INSERT INTO BAR ('hey', 'there')</query>
|
||||
</setting>
|
||||
-->
|
||||
</settings>
|
||||
</connection>
|
||||
</datasource>
|
||||
|
||||
</datasources>
|
||||
</propel>
|
||||
</config>
|
87
airtime_mvc/library/propel/test/fixtures/namespaced/schema.xml
vendored
Normal file
87
airtime_mvc/library/propel/test/fixtures/namespaced/schema.xml
vendored
Normal file
|
@ -0,0 +1,87 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="bookstore_namespaced" defaultIdMethod="native"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="../../../generator/resources/xsd/database.xsd">
|
||||
|
||||
<table name="book" description="Book Table" phpName="NamespacedBook" namespace="Foo\Bar">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Book Id" />
|
||||
<column name="title" type="VARCHAR" required="true" description="Book Title" primaryString="true" />
|
||||
<column name="isbn" required="true" type="VARCHAR" size="24" phpName="ISBN" description="ISBN Number" />
|
||||
<column name="price" required="false" type="FLOAT" description="Price of the book." />
|
||||
<column name="publisher_id" required="false" type="INTEGER" description="Foreign Key Publisher" />
|
||||
<column name="author_id" required="false" type="INTEGER" description="Foreign Key Author" />
|
||||
<foreign-key foreignTable="publisher" onDelete="setnull">
|
||||
<reference local="publisher_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="author" onDelete="setnull" onUpdate="cascade">
|
||||
<reference local="author_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<validator column="title" translate="none">
|
||||
<rule name="unique" message="Book title already in database." />
|
||||
<rule name="minLength" value="10" message="Book title must be more than ${value} characters long." />
|
||||
<rule name="maxLength" value="255" message="Book title must not be longer than ${value} characters." />
|
||||
</validator>
|
||||
<validator column="isbn" translate="none">
|
||||
<rule name="class" class="bookstore.validator.ISBNValidator" message="ISBN does not validate!"/>
|
||||
</validator>
|
||||
</table>
|
||||
|
||||
<table name="publisher" description="Publisher Table" phpName="NamespacedPublisher" namespace="Baz">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Publisher Id" />
|
||||
<column name="name" required="true" type="VARCHAR" size="128" default="Penguin" description="Publisher Name" />
|
||||
</table>
|
||||
|
||||
<table name="author" description="Author Table" phpName="NamespacedAuthor">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Author Id" />
|
||||
<column name="first_name" required="true" type="VARCHAR" size="128" description="First Name" />
|
||||
<column name="last_name" required="true" type="VARCHAR" size="128" description="Last Name" />
|
||||
<column name="email" type="VARCHAR" size="128" description="E-Mail Address" />
|
||||
<column name="age" type="INTEGER" description="The authors age" />
|
||||
<validator column="last_name" translate="none">
|
||||
<rule name="required" message="The last name field is required." />
|
||||
</validator>
|
||||
<validator column="email" translate="none">
|
||||
<rule name="match" value="/^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9])+(\.[a-zA-Z0-9_-]+)+$/" message="Please enter a valid email address." />
|
||||
</validator>
|
||||
<validator column="age" translate="none">
|
||||
<rule name="minValue" value="0" message="Please enter a positive number." />
|
||||
<rule name="maxValue" value="100" message="Impressive age! Just kidding, hm?" />
|
||||
</validator>
|
||||
</table>
|
||||
|
||||
<!-- test many-to-many relationships -->
|
||||
<table name="book_club_list" phpName="NamespacedBookClub" namespace="Baz">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" />
|
||||
<column name="group_leader" required="true" type="VARCHAR" size="100" />
|
||||
<column name="theme" required="false" type="VARCHAR" size="50" />
|
||||
</table>
|
||||
|
||||
<table name="book_x_list" phpName="NamespacedBookListRel" isCrossRef="true">
|
||||
<column name="book_id" primaryKey="true" type="INTEGER" />
|
||||
<column name="book_club_list_id" primaryKey="true" type="INTEGER" />
|
||||
<foreign-key foreignTable="book" onDelete="cascade">
|
||||
<reference local="book_id" foreign="id" />
|
||||
</foreign-key>
|
||||
<foreign-key foreignTable="book_club_list" onDelete="cascade">
|
||||
<reference local="book_club_list_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
<!-- test self-referencing foreign keys and inheritance-->
|
||||
<table name="bookstore_employee" phpName="NamespacedBookstoreEmployee" namespace="Foo\Bar">
|
||||
<column name="id" type="INTEGER" primaryKey="true" autoIncrement="true" />
|
||||
<column name="class_key" type="INTEGER" required="true" default="0" inheritance="single">
|
||||
<inheritance key="0" class="NamespacedBookstoreEmployee" />
|
||||
<inheritance key="1" class="NamespacedBookstoreManager" extends="NamespacedBookstoreEmployee" />
|
||||
<inheritance key="2" class="NamespacedBookstoreCashier" extends="NamespacedBookstoreEmployee" />
|
||||
</column>
|
||||
<column name="name" type="VARCHAR" size="32" />
|
||||
<column name="job_title" type="VARCHAR" size="32" />
|
||||
<column name="supervisor_id" type="INTEGER" />
|
||||
<column name="photo" type="BLOB" lazyLoad="true" />
|
||||
<foreign-key foreignTable="bookstore_employee" phpName="Supervisor" refPhpName="Subordinate" onDelete="setnull">
|
||||
<reference local="supervisor_id" foreign="id" />
|
||||
</foreign-key>
|
||||
</table>
|
||||
|
||||
</database>
|
35
airtime_mvc/library/propel/test/fixtures/nestedset/build.properties
vendored
Normal file
35
airtime_mvc/library/propel/test/fixtures/nestedset/build.properties
vendored
Normal file
|
@ -0,0 +1,35 @@
|
|||
# $Id: build.properties 1260 2009-10-26 20:43:51Z francois $
|
||||
#
|
||||
# This is a project-specific build.properties file. The properties
|
||||
# in this file override anything set in Propel's top-level build.properties
|
||||
# file when *this* project is being built.
|
||||
#
|
||||
# See top-level build.properties-sample for explanation of configuration
|
||||
# options.
|
||||
#
|
||||
# Because this file is included before the top-level build.properties file,
|
||||
# you cannot refer to any properties set therein.
|
||||
|
||||
propel.project = nestedset
|
||||
propel.database = sqlite
|
||||
propel.database.url = sqlite:/var/tmp/nestedset.db
|
||||
# For MySQL or Oracle, you also need to specify username & password
|
||||
# propel.database.user = [db username]
|
||||
# propel.database.password = [db password]
|
||||
|
||||
# Note that if you do not wish to specify the database (e.g. if you
|
||||
# are using multiple databses) you can use the @DB@ token which
|
||||
# will be replaced with a database at runtime.
|
||||
# E.g.: propel.database.url = sqlite://localhost/./test/@DB@.db
|
||||
# This will work for the datadump and the insert-sql tasks.
|
||||
|
||||
# propel.database.createUrl = (doesn't aply for SQLite, since db is auto-created)
|
||||
|
||||
propel.targetPackage = nestedset
|
||||
|
||||
# The unit tests need to test this stuff
|
||||
propel.addGenericAccessors = true
|
||||
propel.addGenericMutators = true
|
||||
|
||||
# Use the new PHP 5.2 DateTime class
|
||||
propel.useDateTimeClass = true
|
39
airtime_mvc/library/propel/test/fixtures/nestedset/nestedset-schema.xml
vendored
Normal file
39
airtime_mvc/library/propel/test/fixtures/nestedset/nestedset-schema.xml
vendored
Normal file
|
@ -0,0 +1,39 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="treetest" defaultIdMethod="native">
|
||||
<table name="test" treeMode="NestedSet" description="Test">
|
||||
<column
|
||||
name="id"
|
||||
required="true"
|
||||
primaryKey="true"
|
||||
autoIncrement="true"
|
||||
type="INTEGER"
|
||||
description="Node Id"/>
|
||||
<column
|
||||
name="left"
|
||||
required="true"
|
||||
nestedSetLeftKey="true"
|
||||
type="INTEGER"
|
||||
description="Node Left Key"/>
|
||||
<column
|
||||
name="right"
|
||||
required="true"
|
||||
nestedSetRightKey="true"
|
||||
type="INTEGER"
|
||||
description="Node Right Key"/>
|
||||
<column
|
||||
name="label"
|
||||
required="true"
|
||||
type="VARCHAR"
|
||||
size="10"
|
||||
description="Label"/>
|
||||
<unique name="pk">
|
||||
<unique-column name="label"/>
|
||||
</unique>
|
||||
<index name="left">
|
||||
<index-column name="left"/>
|
||||
</index>
|
||||
<index name="right">
|
||||
<index-column name="right"/>
|
||||
</index>
|
||||
</table>
|
||||
</database>
|
53
airtime_mvc/library/propel/test/fixtures/nestedset/runtime-conf.xml
vendored
Normal file
53
airtime_mvc/library/propel/test/fixtures/nestedset/runtime-conf.xml
vendored
Normal file
|
@ -0,0 +1,53 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!-- This new XML configuration format is the default format for properties
|
||||
files. You can also used the old INI-based .properties format, but
|
||||
support for this will be removed in next major Propel version. -->
|
||||
|
||||
<config>
|
||||
<!--
|
||||
#
|
||||
# L O G G I N G
|
||||
#
|
||||
# We use PEAR-compatible Log for all Propel logging and we embed the
|
||||
# log conf properties within our application configuration.
|
||||
#
|
||||
# type - the type of log (default 'file')
|
||||
# name - the name of log or path to file. (default './propel.log')
|
||||
# ident - the text used to identify the log messages
|
||||
# level - the log level
|
||||
# PEAR_LOG_EMERG 0
|
||||
# PEAR_LOG_ALERT 1
|
||||
# PEAR_LOG_CRIT 2
|
||||
# PEAR_LOG_ERR 3
|
||||
# PEAR_LOG_WARNING 4
|
||||
# PEAR_LOG_NOTICE 5
|
||||
# PEAR_LOG_INFO 6
|
||||
# PEAR_LOG_DEBUG 7 <== DEFAULT
|
||||
-->
|
||||
<log>
|
||||
<ident>propel-nestedset</ident>
|
||||
<level>7</level>
|
||||
</log>
|
||||
<!--
|
||||
#
|
||||
# P R O P E L P R O P E R T I E S
|
||||
#
|
||||
# Note that you can configure multiple datasources; for example if your
|
||||
# project uses several databases.
|
||||
-->
|
||||
<propel>
|
||||
<datasources default="nestedset">
|
||||
<datasource id="nestedset">
|
||||
<!-- the Propel adapter (usually same as phptype of connection DSN) -->
|
||||
<adapter>sqlite</adapter>
|
||||
<!-- Connection DSN. See PEAR DSN format for other supported parameters. -->
|
||||
<connection>
|
||||
<phptype>sqlite</phptype>
|
||||
<dsn>sqlite:/var/tmp/nestedset.db</dsn>
|
||||
<username></username>
|
||||
<password></password>
|
||||
</connection>
|
||||
</datasource>
|
||||
</datasources>
|
||||
</propel>
|
||||
</config>
|
26
airtime_mvc/library/propel/test/fixtures/treetest/build.properties
vendored
Normal file
26
airtime_mvc/library/propel/test/fixtures/treetest/build.properties
vendored
Normal file
|
@ -0,0 +1,26 @@
|
|||
# $Id: build.properties 1260 2009-10-26 20:43:51Z francois $
|
||||
#
|
||||
# This is a project-specific build.properties file. The properties
|
||||
# in this file override anything set in Propel's top-level build.properties
|
||||
# file when *this* project is being built.
|
||||
#
|
||||
# See top-level build.properties-sample for explanation of configuration
|
||||
# options.
|
||||
#
|
||||
# Because this file is included before the top-level build.properties file,
|
||||
# you cannot refer to any properties set therein.
|
||||
|
||||
propel.targetPackage = treetest
|
||||
propel.project = treetest
|
||||
|
||||
propel.database = sqlite
|
||||
propel.database.url = sqlite:/var/tmp/treetest.db
|
||||
|
||||
#propel.database = mysql
|
||||
#propel.database.url = mysql://localhost/test
|
||||
|
||||
#propel.database = codebase
|
||||
#propel.database.url = odbc://localhost/Driver=CodeBaseOdbcStand;DBQ=test;?adapter=CodeBase
|
||||
|
||||
|
||||
|
53
airtime_mvc/library/propel/test/fixtures/treetest/runtime-conf.xml
vendored
Normal file
53
airtime_mvc/library/propel/test/fixtures/treetest/runtime-conf.xml
vendored
Normal file
|
@ -0,0 +1,53 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!-- This new XML configuration format is the default format for properties
|
||||
files. You can also used the old INI-based .properties format, but
|
||||
support for this will be removed in next major Propel version. -->
|
||||
|
||||
<config>
|
||||
<!--
|
||||
#
|
||||
# L O G G I N G
|
||||
#
|
||||
# We use PEAR-compatible Log for all Propel logging and we embed the
|
||||
# log conf properties within our application configuration.
|
||||
#
|
||||
# type - the type of log (default 'file')
|
||||
# name - the name of log or path to file. (default './propel.log')
|
||||
# ident - the text used to identify the log messages
|
||||
# level - the log level
|
||||
# PEAR_LOG_EMERG 0
|
||||
# PEAR_LOG_ALERT 1
|
||||
# PEAR_LOG_CRIT 2
|
||||
# PEAR_LOG_ERR 3
|
||||
# PEAR_LOG_WARNING 4
|
||||
# PEAR_LOG_NOTICE 5
|
||||
# PEAR_LOG_INFO 6
|
||||
# PEAR_LOG_DEBUG 7 <== DEFAULT
|
||||
-->
|
||||
<log>
|
||||
<ident>propel-treetest</ident>
|
||||
<level>7</level>
|
||||
</log>
|
||||
<!--
|
||||
#
|
||||
# P R O P E L P R O P E R T I E S
|
||||
#
|
||||
# Note that you can configure multiple datasources; for example if your
|
||||
# project uses several databases.
|
||||
-->
|
||||
<propel>
|
||||
<datasources default="treetest">
|
||||
<datasource id="treetest">
|
||||
<!-- the Propel adapter (usually same as phptype of connection DSN) -->
|
||||
<adapter>sqlite</adapter>
|
||||
<!-- Connection DSN. See PEAR DSN format for other supported parameters. -->
|
||||
<connection>
|
||||
<phptype>sqlite</phptype>
|
||||
<dsn>sqlite:/var/tmp/treetest.db</dsn>
|
||||
<username></username>
|
||||
<password></password>
|
||||
</connection>
|
||||
</datasource>
|
||||
</datasources>
|
||||
</propel>
|
||||
</config>
|
28
airtime_mvc/library/propel/test/fixtures/treetest/treetest-schema.xml
vendored
Normal file
28
airtime_mvc/library/propel/test/fixtures/treetest/treetest-schema.xml
vendored
Normal file
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="treetest" defaultIdMethod="none">
|
||||
|
||||
<table name="test" treeMode="MaterializedPath" description="Test">
|
||||
<column
|
||||
name="npath"
|
||||
required="true"
|
||||
nodeKey="true"
|
||||
nodeKeySep="."
|
||||
primaryKey="true"
|
||||
type="VARCHAR"
|
||||
size="80"
|
||||
description="Node Path"/>
|
||||
<column
|
||||
name="label"
|
||||
required="true"
|
||||
type="VARCHAR"
|
||||
size="10"
|
||||
description="Label"/>
|
||||
<unique name="pk">
|
||||
<unique-column name="label"/>
|
||||
</unique>
|
||||
<unique name="ck">
|
||||
<unique-column name="npath"/>
|
||||
</unique>
|
||||
</table>
|
||||
|
||||
</database>
|
9
airtime_mvc/library/propel/test/fixtures/unique-column/column-schema.xml
vendored
Normal file
9
airtime_mvc/library/propel/test/fixtures/unique-column/column-schema.xml
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="columnTest" defaultIdMethod="native">
|
||||
|
||||
<table name="columnTestTable">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Book Id" />
|
||||
<column name="title" type="VARCHAR" required="true" description="Book Title" />
|
||||
<column name="title" type="VARCHAR" required="true" description="Book Title" />
|
||||
</table>
|
||||
</database>
|
13
airtime_mvc/library/propel/test/fixtures/unique-column/table-schema.xml
vendored
Normal file
13
airtime_mvc/library/propel/test/fixtures/unique-column/table-schema.xml
vendored
Normal file
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||||
<database name="columnTest" defaultIdMethod="native">
|
||||
|
||||
<table name="columnTestTable">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Book Id" />
|
||||
<column name="title" type="VARCHAR" required="true" description="Book Title" />
|
||||
</table>
|
||||
|
||||
<table name="columnTestTable">
|
||||
<column name="id" required="true" primaryKey="true" autoIncrement="true" type="INTEGER" description="Book Id" />
|
||||
<column name="title" type="VARCHAR" required="true" description="Book Title" />
|
||||
</table>
|
||||
</database>
|
Loading…
Add table
Add a link
Reference in a new issue