Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Upgrade symfony to 1.4.6

  • Loading branch information...
commit 4160bd0aca190542ba1475a72085518baf8b3c9d 1 parent fce8187
filo authored
Showing with 369 additions and 26,425 deletions.
  1. +1 −2  apps/fe/config/settings.yml
  2. +1 −1  apps/fe/modules/sfGuardUser/templates/newSuccess.php
  3. +25 −0 build.xml
  4. +1 −2  config/ProjectConfiguration.class.php
  5. BIN  data/phpcollab_unit_test.db
  6. +3 −0  default.properties
  7. +292 −174 lib/vendor/symfony/CHANGELOG
  8. +0 −35 lib/vendor/symfony/COPYRIGHT
  9. +0 −6 lib/vendor/symfony/DEPRECATED_IN_1_3
  10. +0 −6 lib/vendor/symfony/UPGRADE_TO_1_3
  11. +0 −6 lib/vendor/symfony/WHATS_NEW
  12. +0 −203 lib/vendor/symfony/data/web/sf/calendar/calendar-setup.js
  13. +0 −252 lib/vendor/symfony/data/web/sf/calendar/calendar-system.css
  14. +0 −1,806 lib/vendor/symfony/data/web/sf/calendar/calendar.js
  15. +0 −39 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-af.js
  16. +0 −128 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-bg.js
  17. +0 −125 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-ca.js
  18. +0 −72 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-cs.js
  19. +0 −127 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-da.js
  20. +0 −127 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-de.js
  21. +0 −103 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-el.js
  22. +0 −127 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-en.js
  23. +0 −129 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-es.js
  24. +0 −129 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-eu.js
  25. +0 −112 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-fi.js
  26. +0 −129 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-fr.js
  27. +0 −127 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-he.js
  28. +0 −64 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-hr.js
  29. +0 −128 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-hu.js
  30. +0 −128 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-it.js
  31. +0 −135 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-ja.js
  32. +0 −134 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-ko.js
  33. +0 −128 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-lt.js
  34. +0 −128 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-lv.js
  35. +0 −76 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-nl.js
  36. +0 −129 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-no.js
  37. +0 −127 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-pl.js
  38. +0 −130 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-pt.js
  39. +0 −112 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-pt_BR.js
  40. +0 −72 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-ro.js
  41. +0 −127 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-ru.js
  42. +0 −127 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-sk.js
  43. +0 −109 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-sl.js
  44. +0 −104 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-sq.js
  45. BIN  lib/vendor/symfony/data/web/sf/calendar/lang/calendar-sr.js
  46. +0 −132 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-sv.js
  47. +0 −73 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-tr.js
  48. +0 −123 lib/vendor/symfony/data/web/sf/calendar/lang/calendar-zh.js
  49. BIN  lib/vendor/symfony/data/web/sf/calendar/skins/aqua/active-bg.gif
  50. BIN  lib/vendor/symfony/data/web/sf/calendar/skins/aqua/dark-bg.gif
  51. BIN  lib/vendor/symfony/data/web/sf/calendar/skins/aqua/hover-bg.gif
  52. BIN  lib/vendor/symfony/data/web/sf/calendar/skins/aqua/menuarrow.gif
  53. BIN  lib/vendor/symfony/data/web/sf/calendar/skins/aqua/normal-bg.gif
  54. BIN  lib/vendor/symfony/data/web/sf/calendar/skins/aqua/rowhover-bg.gif
  55. BIN  lib/vendor/symfony/data/web/sf/calendar/skins/aqua/status-bg.gif
  56. +0 −242 lib/vendor/symfony/data/web/sf/calendar/skins/aqua/theme.css
  57. BIN  lib/vendor/symfony/data/web/sf/calendar/skins/aqua/title-bg.gif
  58. BIN  lib/vendor/symfony/data/web/sf/calendar/skins/aqua/today-bg.gif
  59. BIN  lib/vendor/symfony/data/web/sf/sf_admin/images/date.png
  60. BIN  lib/vendor/symfony/data/web/sf/sf_admin/images/delete_icon.png
  61. BIN  lib/vendor/symfony/data/web/sf/sf_admin/images/edit_icon.png
  62. BIN  lib/vendor/symfony/data/web/sf/sf_admin/images/help.png
  63. +0 −51 lib/vendor/symfony/lib/action/sfAction.class.php
  64. +1 −16 lib/vendor/symfony/lib/action/sfComponent.class.php
  65. +2 −23 lib/vendor/symfony/lib/autoload/sfCoreAutoload.class.php
  66. +2 −9 lib/vendor/symfony/lib/cache/sfFunctionCache.class.php
  67. +0 −1  lib/vendor/symfony/lib/config/config/module.yml
  68. +1 −10 lib/vendor/symfony/lib/config/config/settings.yml
  69. +1 −20 lib/vendor/symfony/lib/config/sfApplicationConfiguration.class.php
  70. +1 −16 lib/vendor/symfony/lib/config/sfGeneratorConfigHandler.class.php
  71. +0 −55 lib/vendor/symfony/lib/config/sfLoader.class.php
  72. +0 −47 lib/vendor/symfony/lib/controller/sfConsoleController.class.php
  73. +0 −29 lib/vendor/symfony/lib/controller/sfController.class.php
  74. +0 −919 lib/vendor/symfony/lib/generator/sfAdminGenerator.class.php
  75. +0 −456 lib/vendor/symfony/lib/generator/sfCrudGenerator.class.php
  76. +1 −14 lib/vendor/symfony/lib/generator/sfGeneratorManager.class.php
  77. +0 −9 lib/vendor/symfony/lib/helper/AssetHelper.php
  78. +0 −953 lib/vendor/symfony/lib/helper/DateFormHelper.php
  79. +0 −8 lib/vendor/symfony/lib/helper/DebugHelper.php
  80. +0 −922 lib/vendor/symfony/lib/helper/FormHelper.php
  81. +0 −212 lib/vendor/symfony/lib/helper/ObjectAdminHelper.php
  82. +0 −330 lib/vendor/symfony/lib/helper/ObjectHelper.php
  83. +1 −1  lib/vendor/symfony/lib/helper/UrlHelper.php
  84. +0 −69 lib/vendor/symfony/lib/helper/ValidationHelper.php
  85. +0 −46 lib/vendor/symfony/lib/helper/sfRichTextEditor.class.php
  86. +0 −100 lib/vendor/symfony/lib/helper/sfRichTextEditorFCK.class.php
  87. +0 −116 lib/vendor/symfony/lib/helper/sfRichTextEditorTinyMCE.class.php
  88. +0 −39 lib/vendor/symfony/lib/log/sfVarLogger.class.php
  89. +0 −7 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/LICENSE
  90. +0 −504 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/LICENSE.PHPMailer
  91. +0 −35 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/config/config.php
  92. +0 −16 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/config/mailer.yml
  93. +0 −1  lib/vendor/symfony/lib/plugins/sfCompat10Plugin/data/mime_types.dat
  94. +0 −441 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/data/mime_types.php
  95. +0 −42 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/bridge/sfEzComponentsBridge.class.php
  96. +0 −97 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/bridge/sfZendFrameworkBridge.class.php
  97. +0 −185 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/cache/sfProcessCache.class.php
  98. +0 −549 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/config/sfValidatorConfigHandler.class.php
  99. +0 −23 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/exception/sfActionException.class.php
  100. +0 −23 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/exception/sfValidatorException.class.php
  101. +0 −66 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/filter/sfFillInFormFilter.class.php
  102. +0 −275 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/filter/sfValidationExecutionFilter.class.php
  103. +0 −437 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/request/sfRequestCompat10.class.php
  104. +0 −406 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/sfMail.class.php
  105. +0 −277 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/util/sfFillInForm.class.php
  106. +0 −83 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfCallbackValidator.class.php
  107. +0 −117 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfCompareValidator.class.php
  108. +0 −137 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfDateValidator.class.php
  109. +0 −116 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfEmailValidator.class.php
  110. +0 −111 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfFileValidator.class.php
  111. +0 −156 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfNumberValidator.class.php
  112. +0 −90 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfRegexValidator.class.php
  113. +0 −138 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfStringValidator.class.php
  114. +0 −62 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfUrlValidator.class.php
  115. +0 −120 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfValidator.class.php
  116. +0 −320 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/validator/sfValidatorManager.class.php
  117. +0 −1,582 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/class.phpmailer.php
  118. +0 −1,045 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/class.smtp.php
  119. +0 −20 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-br.php
  120. +0 −21 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-ca.php
  121. +0 −23 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-cz.php
  122. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-de.php
  123. +0 −23 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-dk.php
  124. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-en.php
  125. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-es.php
  126. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-fi.php
  127. +0 −24 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-fo.php
  128. +0 −23 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-fr.php
  129. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-hu.php
  130. +0 −27 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-it.php
  131. +0 −24 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-ja.php
  132. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-nl.php
  133. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-no.php
  134. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-pl.php
  135. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-ro.php
  136. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-ru.php
  137. +0 −23 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-se.php
  138. +0 −23 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/vendor/phpmailer/language/phpmailer.lang-tr.php
  139. +0 −133 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/lib/view/sfMailView.class.php
  140. +0 −43 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/bootstrap/functional.php
  141. +0 −18 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/bootstrap/unit.php
  142. +0 −33 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fillInFilterTest.php
  143. +0 −2  lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/config/app.yml
  144. +0 −4 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/config/cache.yml
  145. +0 −22 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/config/factories.yml
  146. +0 −9 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/config/filters.yml
  147. +0 −8 .../lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/config/frontendConfiguration.class.php
  148. +0 −15 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/config/routing.yml
  149. +0 −2  lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/config/security.yml
  150. +0 −20 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/config/settings.yml
  151. +0 −17 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/config/view.yml
  152. +0 −5 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/lib/myUser.class.php
  153. +0 −43 ...gins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/fillInFilter/actions/actions.class.php
  154. +0 −1  ...gins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/fillInFilter/templates/doneSuccess.php
  155. +0 −4 ...s/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/fillInFilter/templates/forwardSuccess.php
  156. +0 −6 ...ins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/fillInFilter/templates/indexSuccess.php
  157. +0 −10 ...b/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/fillInFilter/validate/forward.yml
  158. +0 −13 ...ib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/fillInFilter/validate/update.yml
  159. +0 −51 ...lugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/validation/actions/actions.class.php
  160. +0 −16 ...gins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/validation/templates/Index2Success.php
  161. +0 −15 ...ugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/validation/templates/groupSuccess.php
  162. +0 −16 ...ugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/validation/templates/indexSuccess.php
  163. +0 −22 .../lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/validation/validate/Index2.yml
  164. +0 −24 ...y/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/validation/validate/group.yml
  165. +0 −22 ...y/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/modules/validation/validate/index.yml
  166. +0 −21 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/apps/frontend/templates/layout.php
  167. +0 −12 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/config/ProjectConfiguration.class.php
  168. +0 −5 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/config/databases.yml
  169. +0 −47 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/config/propel.ini
  170. +0 −2  lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/config/properties.ini
  171. +0 −5 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/config/rsync_exclude.txt
  172. 0  lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/config/schema.yml
  173. 0  lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/data/environment.migrated
  174. +0 −15 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/fixtures/symfony
  175. +0 −186 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/functional/validationTest.php
  176. +0 −53 ...ymfony/lib/plugins/sfCompat10Plugin/test/unit/config/fixtures/sfValidatorConfigHandler/alternate_format.yml
  177. +0 −69 ...symfony/lib/plugins/sfCompat10Plugin/test/unit/config/fixtures/sfValidatorConfigHandler/standard_format.yml
  178. +0 −30 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/config/sfValidatorConfigHandlerTest.php
  179. +0 −62 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/request/sfRequestTest.php
  180. +0 −21 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/sfMailTest.php
  181. +0 −339 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/util/sfFillInFormTest.php
  182. +0 −81 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/validator/sfCallbackValidatorTest.php
  183. +0 −110 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/validator/sfCompareValidatorTest.php
  184. +0 −78 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/validator/sfEmailValidatorTest.php
  185. +0 −101 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/validator/sfNumberValidatorTest.php
  186. +0 −62 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/validator/sfRegexValidatorTest.php
  187. +0 −57 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/validator/sfStringValidatorTest.php
  188. +0 −47 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/validator/sfUrlValidatorTest.php
  189. +0 −32 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/validator/sfValidatorTest.php
  190. +0 −47 lib/vendor/symfony/lib/plugins/sfCompat10Plugin/test/unit/validator/sfValidatorTestHelper.class.php
  191. +1 −14 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/config/sfDoctrinePluginConfiguration.class.php
  192. +1 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/data/generator/sfDoctrineModule/admin/parts/configuration.php
  193. +1 −1  ...mfony/lib/plugins/sfDoctrinePlugin/data/generator/sfDoctrineModule/admin/template/actions/actions.class.php
  194. +1 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/data/generator/sfDoctrineModule/admin/template/lib/helper.php
  195. +0 −41 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/database/sfDoctrineDataRetriever.class.php
  196. +0 −122 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/helper/ObjectDoctrineAdminHelper.php
  197. +0 −155 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/log/sfDoctrineLogger.class.php
  198. +0 −93 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineBuildAllLoadTask.class.php
  199. +0 −89 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineBuildAllReloadTask.class.php
  200. +0 −100 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineBuildAllReloadTestAllTask.class.php
  201. +0 −98 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineBuildAllTask.class.php
  202. +1 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineBuildDbTask.class.php
  203. +0 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineBuildModelTask.class.php
  204. +1 −2  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineBuildSchemaTask.class.php
  205. +1 −2  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineBuildSqlTask.class.php
  206. +1 −2  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineCreateModelTablesTask.class.php
  207. +1 −2  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineDataDumpTask.class.php
  208. +1 −2  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineDataLoadTask.class.php
  209. +0 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineDeleteModelFilesTask.class.php
  210. +0 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineDqlTask.class.php
  211. +0 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineDropDbTask.class.php
  212. +1 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineGenerateAdminTask.class.php
  213. +0 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineGenerateMigrationTask.class.php
  214. +1 −2  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineGenerateMigrationsDbTask.class.php
  215. +0 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineGenerateMigrationsDiffTask.class.php
  216. +1 −2  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineGenerateMigrationsModelsTask.class.php
  217. +0 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineGenerateModuleTask.class.php
  218. +0 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineInsertSqlTask.class.php
  219. +1 −2  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineMigrateTask.class.php
  220. +0 −74 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineRebuildDbTask.class.php
  221. +0 −76 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/task/sfDoctrineReloadDataTask.class.php
  222. +0 −114 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/validator/sfDoctrineUniqueValidator.class.php
  223. +0 −34 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/validator/sfValidatorDoctrineChoiceMany.class.php
  224. +1 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/widget/sfWidgetFormDoctrineChoice.class.php
  225. +0 −34 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/widget/sfWidgetFormDoctrineChoiceMany.class.php
  226. +0 −103 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/widget/sfWidgetFormDoctrineSelect.class.php
  227. +0 −34 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/widget/sfWidgetFormDoctrineSelectMany.class.php
  228. +0 −8 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/test/functional/fixtures/apps/backend/config/factories.yml
  229. +0 −8 lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/test/functional/fixtures/apps/frontend/config/factories.yml
  230. +1 −1  lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/test/functional/fixtures/config/ProjectConfiguration.class.php
  231. +1 −1  ...ns/sfDoctrinePlugin/test/functional/fixtures/lib/filter/doctrine/SettingsPlugin/SettingFormFilter.class.php
  232. +1 −1  ...ib/plugins/sfDoctrinePlugin/test/functional/fixtures/lib/form/doctrine/SettingsPlugin/SettingForm.class.php
  233. +1 −1  ...y/lib/plugins/sfDoctrinePlugin/test/functional/fixtures/lib/model/doctrine/SettingsPlugin/Setting.class.php
  234. +1 −1  ...lugin/test/functional/fixtures/plugins/SettingsPlugin/lib/filter/doctrine/PluginSettingFormFilter.class.php
  235. +1 −1  ...octrinePlugin/test/functional/fixtures/plugins/SettingsPlugin/lib/form/doctrine/PluginSettingForm.class.php
  236. +1 −1  ...sfDoctrinePlugin/test/functional/fixtures/plugins/SettingsPlugin/lib/model/doctrine/PluginSetting.class.php
  237. +0 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/LICENSE.famfamfam
  238. +0 −13 .../symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/skeleton/actions/actions.class.php
  239. +0 −5 ...endor/symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/skeleton/config/generator.yml
  240. +0 −505 .../symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/actions/actions.class.php
  241. +0 −13 ...ymfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_edit_actions.php
  242. 0  ...symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_edit_footer.php
  243. +0 −86 ...r/symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_edit_form.php
  244. 0  ...symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_edit_header.php
  245. +0 −17 ...mfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_edit_messages.php
  246. +0 −37 ...dor/symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_filters.php
  247. +0 −43 ...vendor/symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list.php
  248. +0 −10 ...ymfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_actions.php
  249. +0 −13 .../lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_batch_actions.php
  250. 0  ...symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_footer.php
  251. 0  ...symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_header.php
  252. +0 −23 ...mfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_messages.php
  253. +0 −9 ...ony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_td_actions.php
  254. +0 −5 ...b/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_td_batch_actions.php
  255. +0 −16 ...ony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_td_stacked.php
  256. +0 −16 ...ony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_td_tabular.php
  257. +0 −1  ...ony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_th_stacked.php
  258. +0 −24 ...ony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/_list_th_tabular.php
  259. +0 −22 .../symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/editSuccess.php
  260. +0 −34 .../symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelAdmin/default/template/templates/listSuccess.php
  261. +1 −1  lib/vendor/symfony/lib/plugins/sfPropelPlugin/data/generator/sfPropelModule/admin/parts/configuration.php
  262. +0 −69 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/builder/SfExtensionObjectBuilder.php
  263. +0 −59 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/builder/SfExtensionPeerBuilder.php
  264. +0 −57 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/builder/SfMultiExtendObjectBuilder.php
  265. +0 −33 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/builder/SfNestedSetBuilder.php
  266. +0 −33 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/builder/SfNestedSetPeerBuilder.php
  267. +0 −356 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/builder/SfObjectBuilder.php
  268. +0 −858 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/builder/SfPeerBuilder.php
  269. +0 −37 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/database/sfPropelDataRetriever.class.php
  270. +0 −72 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/generator/sfPropelAdminGenerator.class.php
  271. +0 −409 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/generator/sfPropelCrudGenerator.class.php
  272. +1 −1  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPhing.class.php
  273. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelBuildAllLoadTask.class.php
  274. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelBuildAllTask.class.php
  275. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelBuildModelTask.class.php
  276. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelBuildSchemaTask.class.php
  277. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelBuildSqlTask.class.php
  278. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelDataDumpTask.class.php
  279. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelDataLoadTask.class.php
  280. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelGenerateModuleTask.class.php
  281. +0 −96 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelInitAdminTask.class.php
  282. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelInsertSqlTask.class.php
  283. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelSchemaToXmlTask.class.php
  284. +1 −2  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task/sfPropelSchemaToYmlTask.class.php
  285. +0 −102 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/validator/sfPropelUniqueValidator.class.php
  286. +0 −32 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/validator/sfValidatorPropelChoiceMany.class.php
  287. +1 −1  lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/widget/sfWidgetFormPropelChoice.class.php
  288. +0 −32 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/widget/sfWidgetFormPropelChoiceMany.class.php
  289. +0 −108 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/widget/sfWidgetFormPropelSelect.class.php
  290. +0 −32 lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/widget/sfWidgetFormPropelSelectMany.class.php
  291. +0 −57 lib/vendor/symfony/lib/plugins/sfPropelPlugin/test/functional/admin_compat/backendTestBrowser.class.php
  292. +0 −33 lib/vendor/symfony/lib/plugins/sfPropelPlugin/test/functional/admin_compat/batchActionsTest.php
  293. +0 −455 lib/vendor/symfony/lib/plugins/sfPropelPlugin/test/functional/admin_compat/browseTest.php
  294. +0 −153 lib/vendor/symfony/lib/plugins/sfPropelPlugin/test/functional/admin_compat/customizationTest.php
  295. +0 −26 lib/vendor/symfony/lib/plugins/sfPropelPlugin/test/functional/admin_compat/editfieldnameTest.php
  296. +0 −41 lib/vendor/symfony/lib/plugins/sfPropelPlugin/test/functional/admin_compat/filterTest.php
  297. +0 −30 lib/vendor/symfony/lib/plugins/sfPropelPlugin/test/functional/admin_compat/inheritanceTest.php
  298. +0 −83 lib/vendor/symfony/lib/plugins/sfPropelPlugin/test/functional/admin_compat/m2mTest.php
  299. +0 −27 lib/vendor/symfony/lib/plugins/sfPropelPlugin/test/functional/admin_compat/maxperpageTest.php
  300. +0 −48 lib/vendor/symfony/lib/plugins/sfPropelPlugin/test/functional/admin_compat/partialTest.php
Sorry, we could not display the entire diff because too many files (425) changed.
View
3  apps/fe/config/settings.yml
@@ -53,8 +53,7 @@ all:
i18n: true
default_culture: en
charset: utf-8
- standard_helpers: [I18N, Form, Partial, Date, idPagination]
- compat_10: true
+ standard_helpers: [I18N, Partial, Date, idPagination]
login_module: sfGuardAuth
login_action: signin
View
2  apps/fe/modules/sfGuardUser/templates/newSuccess.php
@@ -89,7 +89,7 @@
</div>
<div class="clear"></div>
<div class="span-7">
- <?php echo input_tag('Submit', __('Save'), array('class' => 'button', 'type' => 'submit'))?>
+ <input type="submit" class="button" value="Save"/>
<?php echo link_to(__('Cancel'), 'sf_guard_user'); ?>
</div>
<?php echo $form->renderHiddenFields() ?>
View
25 build.xml
@@ -0,0 +1,25 @@
+<project name="phpCollab" default="runtest" basedir="." >
+
+<property file='default.properties' />
+
+ <target name="clear-cache">
+ <exec dir="."
+ executable="php"
+ failonerror="true">
+ <arg line=" ./symfony cc"/>
+ </exec>
+ </target>
+
+ <target name="runtest"
+ description="lancia tutti i test dell'applicazione">
+
+ <exec executable="php"
+ failonerror="true">
+ <arg line=" ./symfony
+ test:${test.group}
+ ${test.app}
+ ${test.filter}" />
+ </exec>
+ </target>
+
+</project>
View
3  config/ProjectConfiguration.class.php
@@ -9,8 +9,7 @@ public function setup()
{
sfYaml::setSpecVersion('1.1');
- $this->enableAllPluginsExcept(array('sfPropelPlugin',
- 'sfCompat10Plugin'));
+ $this->enableAllPluginsExcept(array('sfPropelPlugin'));
}
View
BIN  data/phpcollab_unit_test.db
Binary file not shown
View
3  default.properties
@@ -0,0 +1,3 @@
+test.group = all
+test.app =
+test.filter =
View
466 lib/vendor/symfony/CHANGELOG
@@ -1,174 +1,292 @@
-As of 1.3.0RC1, the CHANGELOG has been moved to the 1.4 CHANGELOG as those two
-versions have the same feature set.
-
-11/09/09: Version 1.3.0 beta2
------------------------------
-
- * [23745] fixed issues in pagers, switched from IteratorAggregate to Iterator, simplified prevention of unnecessary queries, removed some whitespace
- * [23744] refactored match_names in sfFinder so that it is more readable and perhaps even faster (fixes #6589, patch by Artyom Bisyarin)
- * [23740] added errormessage when none of the tests passed to sfTestFunctionalTask or sfTestUnitTask are not found (fixes #6811)
- * [23739] added hooks for specifying custom propel runtime and generator paths
- * [23737] refactored propel initialization to `sfPropelPluginConfiguration`, cleaned up `sfPropelDatabase` to avoid creating multiple `PropelConfiguration` objects, removed Propel runtime classes from `sfAutoload` since Propel has its own autoloader, deprecated `sfPropel::import()` since `Propel::importClass()` allows autoloading
- * [23720] preventing sendHttpHeaders to run multiple times. Once send the method will silently do nothing (closing #7553)
- * [23709] added debug information for Propel in dev environment by default
- * [23696] updated Propel sfWebDebugPanel to respect configuration done in DebugPDO
- * [23692] now using propel 1.4.0 stable tag
- * [23668] fixed doctrine form inheritance when the foreign key on one inheritance model references another inheritance model
- * [23667] fixed default CRUD generate where file uploads were not taken care of
- * [23651] made sfTask::getRouting() lazy
- * [23600] added real cache key (including prefix) to the partial info panel to aid checking the cache. (closes #7520)
- * [23568] added some more useful output to response tester's isValid method
- * [23549] refactored the app:routes task to give a getRouting() method for all tasks
- * [23545] refactor the project:send-emails task to give a getMailer() method for all tasks
- * [23544] moved getMailer() method from sfAction to sfComponent
- * [23539] Fix to Doctrine model building to allow packages
- * [23527] cleaned up propel upgrade
- * [23526] updated propel upgrade to be smarter and include consideration for nested set builders (closes #7475, closes #7476)
- * [23520] references to external modules in bundled xhtml11 dtd
- * [23518] fixed Cascade schema.yml across multiple plugins generates Plugin classes to wrong directory (closes #7481, thanks adrive)
- * [23516] Added a test to check if the BaseForm class exists when building Doctrine or Propel forms (closes #7491)
- * [23515] fixed Form Helper use of Rich Text Editors broken by changes in autoloader (closes #7498)
- * [23437] fixed askAndValidate() typo (closes #7466)
- * [23430] added hooks allowing to inject readymade config into routing
- * [23394] fixed sfMixer hooks in propel peer classes
- * [23382] added support for XSD and relaxNG to response validation
- * [23380] bundled DTDs to avoid issuing requests to w3.org (closes #7445)
- * [23378] added check for target directory before creating configuration cache in project:optimize, moved fs calls to filesystem object
-
-10/26/09: Version 1.3.0 beta1
------------------------------
-
- * [23362] reverted r22731
- * [23361] fixed sfFormFilterDoctrine uses wrong method when filtering a fk with multiple values (closes #7409, thanks aarjona)
- * [23360] fixed plugin tests added multiple times (closes #7082)
- * [23358] fixed hook names sent to sfMixer from base peer classes
- * [23357] tagged custom propel builders as deprecated
- * [23355] fixed possible creation of inconsistent new lines in class manipulator (refs #7442)
- * [23350] fixed null transport service name call
- * [23346] fixed bootstrapping propel unit tests with correct include path
- * [23344] made DateHelperTest more robust by using a single timestamp rather than letting date() obtain them on their own
- * [23343] fixed phpdoc of sfTesterMailer (closes #7391)
- * [23342] fixed margin on admin generator fieldset headings
- * [23338] updated phpDoc of sfFilter:initialize to correctly state that no exceptions are thrown and true is always returned (closes #7426)
- * [23336] getAllPluginPaths does not need to exclude version control files. Excluding them is slightly slower without benefit (refs #7433)
- * [23334] WebDebug panels from Doctrine and Propel list ORM Version. (refs #7432)
- * [23327] fixed sfFinder phpDoc and type comparison (closes #7435)
- * [23322] added optional author argument to generate:project task
- * [23320] added "symfony" to autoloader excludes for better BC (closes #7424, closes #7401)
- * [23317] fixed creation of consolidated doctrine schema file may fail under certain circumstances (refs #7428)
- * [23314] added doc tags for sfDoctrineRecord magic methods (closes #7064)
- * [23310] added copyright notices to propel behaviors, remove some unneeded generated methods
- * [23309] removed xslt from propel integration in favor of new build property for adding default behaviors
- * [23308] added build of model to propel form and filter builds in propel:build task
- * [23307] added parameters to the "symfony" propel behavior to disable the generation of forms and/or filters (refs #7139)
- * [23306] ported symfony's custom propel builders to propel's new behaviors system
- * [23296] Fixing issues caused by latest changes in Doctrine 1.2
- * [23292] fixed sfPeerBuilder refers to variable in behaviours but it has changed to in propel 1.4 (closes #7414)
- * [23234] further shortened plugin paths shown in test harness
- * [23232] fixed unexpected removal of tokens in class manipulator, renamed vars per js parlance
- * [23227] cleaned up render of phing errors
- * [23220] enhanced sfTesterResponse with isValid() method for testing whether a response is well-formed and (optionally) validates against its doctype
- * [23218] fixed identity check for windows color support (closes #7395)
- * [23214] refactored sfForm::renderHiddenFields() so rendering of embedded hidden fields can be switched off, updated admin generators to do so (closes #7394)
- * [23207] made generate:project orm option case insensitive
- * [23205] fixed project autoloading in unit tests
- * [23204] fixed iteration over a sfDoctrinePager object (closes #7355)
- * [23203] fix exception in freshly generated app in an orm-less project
- * [23201] cleaned up doctrine query debug to be a little easier to read
- * [23200] added custom lime harness to cleanup output of plugin paths
- * [23199] added upgrade for changed sfFormDoctrine method signature
- * [23196] added form errors to WDT view panel (closes #7371)
- * [23194] added a --actions-base-class options to tasks that generate modules (closes #5995)
- * [23193] enhanced generate:app task to check for a skeleton in the directory in the project, similar to how generate:module works already
- * [23187] added a way to pass form options to the getForm() method of [Module]GeneratorConfiguration class (closes #6065)
- * [23186] fixed a notice (closes #7384)
- * [23183] added support for colorized output under windows with ansicon (closes #7359)
- * [23180] fixed phpdoc return value for findRoute (closes #7380)
- * [23169] added bound validation on integer types (closes #7370)
- * [23156] fixed implementation of data loader task in build tasks, fixed use of merged schema file in doctrine clean task, made deletion of old doctrine model and form files more precise in delete task
- * [23117] fixed empty_value for generated propel validators (closes #7363)
- * [23113] added additional Constant checking for delivery strategy in mailer. (fixes #7362 patch by Pascal)
- * [23081] removed sf_doc_dir constant
- * [23080] fixed cache option "vary" with custom values creates wrong cacheKey (closes #7354)
- * [23079] fixed wrong class name generated for filter if not specified in generator.yml (closes #7327)
- * [23077] added a new default_params options for sfObjectRouteCollection (closes #7331, patch from nicolas)
- * [23076] fixed propel:build-all-load task (refs #7346)
- * [23075] fixed error when passing an option that does not exist (refs #7346)
- * [23073] added an exception in sfValidatorFile when file_uploads is disable in php.ini (closes #7345)
- * [23064] added type hints to generated form classes (closes #6344)
- * [23063] rewrote task autoloader initialization and reloading so autoload.yml is respected and newly-generated classes are immediately available (closes #5093)
- * [23062] fixed placement of BaseFormFilterPropel (closes #6117)
- * [23060] reverted r22929, fixed overridden class paths in sfSimpleAutoload (refs #7142, refs #7299) this fix also prevents lib files from being scanned for classes after each reload in doctrine:build --all, for example
- * [23059] fixed schema merging when a schema file is empty (closes #7349)
- * [23048] added configuration cascade to the merging of plugin and project doctrine schema files (closes #7342, closes #7344)
- * [23047] switched doctrine external back to HEAD
- * [23020] corrected doctrine task documentation
- * [23019] cleaned up use of cli config in doctrine tasks, added method to doctrine base task to prepare project and plugin schema files for doctrine (refs #7306)
- * [23018] changed new "smart" form filter logic to use validators rather than widgets when building the query, ported enhancement to propel (refs #7139)
- * [23003] pegged Doctrine 1.2 revision until a migration strategy for its revision 6493 is in place or that change is reverted
- * [22987] updated all references from Doctrine:: to Doctrine_Core:: to reflect latest change in Doctrine 1.2. While Doctrie:: exists for BC we perform better by using the new (closes #7332 patch by lsmith)
- * [22983] Fixes for latest changes in Doctrine 1.2
-
-10/12/09: Version 1.3.0 alpha2
-------------------------------
-
- * [22490] fixed catalonian admin gen translation (closes #7213)
- * [22534] added directories generated by the core test suite
- * [22569] Turning off Doctrine level validation by default since it is not integrated with forms validation (addresses #5215)
- * [22575] Initial entry of doctrine:generate-migrations-diff task for Doctrine 1.2
- * [22585] updated propel to 1.4, patched web debug logger to work with new logging mechanism (thanks francois)
- * [22609] added accessor method for getting a particular embedded form
- * [22691] moved code hooking cleanup method to ensure directory has been set (closes #7260)
- * [22720] extended sfBrowser::click() to accept any CSS selector
- * [22731] changed signature for project:optimize task so an environment name is passed first, then 0-n application names (breaks BC with alpha 1)
- * [22748] fixed generation of form for doctrine models that utilize concrete inheritance (closes #7221)
- * [22757] removed sfLoader from core compile
- * [22759] fixed symfony coding standards in doctrine-generated model, table and migration classes
- * [22770] sfDoctrineGenerateMigrationTask using $config information instead of hardcoded path
- * [22795] fixed parsing of non-scalar parameters in doctrine WDT (closes #7252)
- * [22796] fixed view WDT when log message type is not a classname (closes #7238)
- * [22807] Switched Propel externals to HEAD
- * [22810] Removed symfony's custom isPrimaryString column attribute (use Propel's primaryString column attribute for the exact same feature)
- * [22811] added context.method_not_found event to facilitate the creation of lazy-loading factories
- * [22812] Fixed a problem with propel.ini custom settings not being read correctly
- * [22819] fixed sfAutoloadConfigHandler to work on windows (closes #7285, thanks andyr12345)
- * [22820] fixed formatting of permissions task error
- * [22827] fixed formatting of application option list when option has no shortcut
- * [22859] added up, down and dry-run options to doctrine:migrate, rendered migration exceptions using symfony's formatter
- * [22860] fixed Doctrine migration task either not using configured directory or not creating them
- * [22870] fixed sendNextImmediately() method (closes #7266)
- * [22873] fixed incorrect HTTP headers (closes #6966)
- * [22876] fixed app.yml configuration cascade blocked by empty file (closes #7298)
- * [22877] fixed i18n currencies order (closes #7244)
- * [22890] Added support for Propel native behaviors
- * [22894] deprecated ProjectConfiguration configureDoctrine and configureDoctrineConnection methods in favor of new doctrine.configure and doctrine.configure_connection events
- * [22899] updated sfForm::renderHiddenFields() to include hidden fields from embedded forms (closes #6578)
- * [22900] fixed broken form validation on concrete inheritance forms (closes #7253)
- * [22904] updated doctrine clean task for better DRY with existing code
- * [22910] made sfFormFilterDoctrine smarter so you don't need to modify getFields() to add a not-real column filter
- * [22914] moved methods that don't need to be generated from generator templates to base classes, added abstract signatures for the rest. removed unused getConnection() method.
- * [22917] abstracted methods from base ORM form classes to sfFormObject (refs #7140)
- * [22918] cleaned up forms and yaml upgrades
- * [22919] simplified creation of route collection name when creating a doctrine admin module, used plural option for route collection path prefix
- * [22921] moved creation of doctrine model builder options and cli configuration arrays to plugin configuration class, added filtering through the event dispatcher via doctrine.filter_model_builder_options and doctrine.filter_cli_config events
- * [22929] fixed forgetful autoloader when reloaded without an application configuration (closes #7142, closes #7299)
- * [22930] fixed bug in the inheritance with the FormFilters (closes #7313)
- * [22931] fixed wrong title url generated by sfWebDebugPanelCache (closes #7310)
- * [22933] removed unnecessary conditional logic (closes #7320, thanks andyr12345)
- * [22935] fixed sfMessageSource_MySQL produces blank white screen if mysql extension disabled (closes #7173)
- * [22936] removed check for GET variables when checking whether a template is cachable, limited caching to GET requests (closes #4708)
- * [22938] added Swift Mailer license in PEAR package.xml
- * [22948] added filtering of phing arguments through propel.filter_phing_args event
- * [22949] added propel:build task (refs #7139)
- * [22955] enhanced propel WDT, fixed some typos (refs #7139)
- * [22958] fixed blocked inheritance in doctrine forms (closes #7279)
- * [22959] updated doctrine:build task so --db option builds sql
-
-09/26/09: Version 1.3.0 alpha1
-------------------------------
-
-Please visit the following URLs for a description of changes:
-
- * http://www.symfony-project.org/tutorial/1_3/en/whats-new
- * http://www.symfony-project.org/tutorial/1_3/en/upgrade
- * http://www.symfony-project.org/tutorial/1_3/en/deprecated
+06/29/10: Version 1.4.6
+-----------------------
+
+ * [30031] added prevention of injected directory traversal in view cache (closes #8805)
+ * [30008] fixed usage of shell_exec when the function is disabled (closes #8758)
+ * [29990] added `sfOutputEscaperObjectDecorator::__isset()` (closes #8793)
+ * [29818] fixed escaping of simple xml in PHP 5.2 (closes #8756)
+ * [29716] Fixing default.css styling (fixes #7750)
+
+05/31/10: Version 1.4.5
+-----------------------
+
+ * [29678] made sfForm::getName() more strict (closes #8318)
+ * [29677] updated doctrine:clean task to delete form classes when generation has been disabled (closes #7777)
+ * [29675] added translation of custom add_empty strings in Doctrine and Propel choice widgets (closes #8571)
+ * [29674] updated date and time widgets so id_format is respected (closes #8446)
+ * [29661] changed generation of (non-foreign key) primary key form fields so validation will fail if the primary key is changed (closes #8639, refs #8704)
+ * [29643] Fixing issue with i18n forms when primary key and i18n field are not the defaults (fixes #8650)
+ * [29641] Making css style in default admin gen css to be more specific (fixes #7750)
+ * [29608] fixed directory permissions issue in sfFinder (closes #8684)
+ * [29570] fixed doctrine form filter m2m query logic
+ * [29553] fixed inconsistent EOL in Doctrine forms (closes #8075)
+ * [29531] updated lime to 1.0.9
+ * [29528] fixed warning in sfBasicSecurityUser when hasCredentials is called before credentials are set (closes #8512)
+ * [29527] fixed notices in sfViewCacheManager::isCacheable() (closes #8527)
+ * [29526] fixed incorrect http status when lockfile present (closes #8536)
+ * [29524] fixed sfWebResponse::sendHttpHeaders() call from sfController::forward() in sfController::getPresentationFor() prevents later call to sendHttpHeaders() within main controller (closes #8568)
+ * [29520] fixed warnings issued by the invalid array_flip() usage in sfI18N (refs #8522)
+ * [29519] marked response as private when using the sfCacheSessionStorage class (closes #8535)
+ * [29490] fixed deprecated delete in sfMemcacheCache (closes #8663)
+ * [29417] fixed strip_links_text() from TextHelpers is defective and does not handle multiple links (closes #8589)
+ * [29416] added admin generator i18n support for traditional chinese (closes #8633)
+ * [29415] fixed sfProjectOptimizeTask on Windows (closes #8640)
+ * [29390] Fixing default_params: { sf_format: xml } for route collections
+ * [29309] fixed: Choices are not always automatically translated. Added option "translate_choices" that defaults to true (closes #7714)
+ * [29285] fixed incorrect splitting of Accept-* headers (closes #8591)
+ * [29218] updated Propel to 1.4.2
+ * [29158] fixed sfDomCssSelector when selecting by attributes evaluating to false (closes #8120)
+ * [29156] Fixed setting of Doctrine's default culture before records are initialized
+
+04/06/10: Version 1.4.4
+-----------------------
+
+ * [29001] fixed sfPropelBaseTask should add propel include path by using sf_propel_runtime_path (thanks agallou, closes #8402)
+ * [29000] fixed sfController::actionExists does not work if module is generated with admin-generator (closes #8427)
+ * [28999] fixed fatal error in WDT when use_database is false but doctrine plugin is enabled
+ * [28996] fixed merge of numeric field defaults, labels and helps in mergeForm
+ * [28994] fixed merging of values from form to field schema (closes #8415)
+ * [28992] updated doctrine form filter to check for NULL or an empty string on text and number fields for parity with the propel form filter (closes #7635)
+ * [28988] fixed upgrade of yaml booleans followed by inline comments (closes #8342)
+ * [28974] fixed merging of short syntax model definitions (refs #8449)
+ * [28962] fixed a warning on lighttpd (closes #8417)
+ * [28961] fixed sfWebController "redirect" method redirects a wrong place when there are more than two GET parameters (closes #8083)
+ * [28958] fixed problem with return values for preDelete behavior for SfPropelBehaviorSymfonyBehaviors (closes #7872)
+ * [28903] Adding missing arguments to embedRelation() (closes #8222)
+ * [28902] Fixing issue with properly shutting down sfDoctrineDatabase and closing the Doctrine connection (closes #7081)
+ * [28900] Fixing issue with form generator and string indexes instead of array (closes #8024)
+ * [28898] Adding datetime to getDateTimeObject() and setDateTimeObject() (fixes #8116)
+ * [28897] Fixing serialization issue with pager (fixes #7987)
+ * [28871] Fixing issue with migrations diff autoloading (fixes #7272)
+ * [28849] moved form_tag from FormHelper to UrlHelper to be consisten with symfony 1.4 (there is no consequence as the UrlHelper is always loaded, closes #7910)
+ * [28848] fixed i18n:extract for generator.yml files (closes #8027, patch from alcaeus)
+ * [28843] fixed i18n extractor keeps acumulating texts when more than 1 Heredoc string is used (closes #8166 - patch from gonrial)
+ * [28840] fixed sfMailer::setDeliveryAddress() (closes #8306)
+ * [28809] Throw exception when routing file cannot be written in doctrine:generate-admin task (fixes #8356)
+ * [28785] fixed sort the parameters in order to compute the cache key the same way when parameters are submited in different order (closes #8457)
+ * [28725] fixed invalid number formatting occurring with currency formats where no explicit negative format was defined (e.g for en_GB) (fixes #8433)
+ * [28715] fixed sfProjectOptimizeTask should optimize only enabled modules (closes #8405)
+ * [28714] fixed caching of 404 pages (closes #8339)
+ * [28713] fixed layout.php is required even if you use decorate_with() to use another layout (closes #8441)
+ * [28712] tweaked the check_configuration.php errors to be more explicit about what to do next (closes #8369)
+ * [28703] fixed setting of culture in sfI18N constructor (closes #8444)
+ * [28702] fixed browser to match more closely the behavior of a real browser (closes #7816)
+ * [28642] added Persian Translation of admin generator (closes #8358)
+ * [28640] fixed overflow for settings in the dev exception page (closes #8430)
+ * [28633] fixed call to custom accessor (closes #8080)
+ * [28632] fixed call to doCount (closes #7196)
+ * [28625] fixed broken reference to response in the cache filter when a page cache is found
+ * [28366] fixed sfGeneratorConfigHandler.class.php doesn't work with Windows path (closes #8301)
+ * [28365] added a way to change the default max forward in the controller for edge cases (#8302)
+ * [28353] fixed escaping of Doctrine query parameters in WDT
+ * [28348] added a check for the php_posix extension as some distrib disable it (closes #8312)
+ * [28347] removed cookies from Response objects serialization as it does not make any sense and can cause weird behaviors
+
+02/25/10: Version 1.4.3
+-----------------------
+
+ * [28260] fixed sql injection vulnerability in doctrine admin generator
+
+02/12/10: Version 1.4.2
+-----------------------
+
+ * [27954] fixed enabling of local csrf protection when disabled globally (closes #8228)
+ * [27942] fixed output of doctrine:insert-sql task (closes #8008)
+ * [27940] fixed field name used when propel unique validator throws a non-global error (closes #8108)
+ * [27842] fixed typo, fixed consistent use of field rather than column name in doctrine form generators (closes #8254)
+ * [27836] fixed submission of disable form fields by browser (closes #8178)
+ * [27755] fixed double escaping of partial vars (closes #7825, refs #1638)
+ * [27753] fixed helper signature (closes #8170)
+ * [27752] fixed initialization of output escaper array iterator (closes #8202)
+ * [27751] fixed symlink logic on vista+ with php 5.3 (closes #8237)
+ * [27750] updated generated stub task to guess a default connection name based on ORM (closes #8209)
+ * [27749] updated doctrine and propel forms to allow setting of defaults on numeric fields from within configure (closes #8238)
+ * [27748] fixed form filtering by 0 on a number column (closes #8175)
+ * [27747] fixed doctrine pager iteration (closes #7758, refs #8021)
+ * [27742] fixed generation of enum pk form widgets (closes #7959)
+ * [27738] fixed XSS hole in select checkbox and radio widgets (closes #8176)
+ * [27736] fixed sfValidatorDoctrineChoice in cloned forms (embedForEach) doesn't function correctly (closes #8198)
+ * [27616] passed the changeStack option in ->get() and ->post() calls of sfBrowserBase to the delegated ->call() (fixes #4271)
+ * [27612] added basic test for sfPager->rewind() and fixed bug not leading to ->reset() not working correctly. (fixes #8021)
+ * [27597] fixed minor incompatibility of new link_to() behaviour with 1.0 behaviour (fixes #7933, #8231)
+ * [27511] fixed typo preventing sfProjectOptimizeTask to work correctly (closes #7885)
+ * [27479] Removed svn version line from propel generated files showing them as modified even without changes each regeneration (backported r27472)
+ * [27284] fixed empty class attributes in WDT markup (closes #8196)
+ * [27211] added check and logging for non executable remote installer files in sfGenerateProjectTask (closes #7921)
+ * [27183] fixed behavior when using either no separators or non slash separators for sfPatternRouting (fixes #8114)
+ * [27061] partially fixed sfTester#isValid() on Windows systems (closes #7812)
+ * [26989] fixed typo in getting Priorities from sfVarLogger (fixes #7938)
+ * [26957] updated web debug javascript to work when the dom includes an svg element
+ * [26872] fixed sfDomCssSelector requires quotes for matching attribute values when they should be optional (closes #8120)
+ * [26871] fixed sfValidateDate for negative timestamps (closes #8134)
+ * [26870] fixed sfWidgetFormSchema::setPositions() which accepts duplication positions (closes #7992)
+ * [26867] turned off xdebug_logging by default as it can make the dev env very very slow (closes #8085)
+ * [26866] fixed sfValidatorDate errors (closes #8118)
+ * [26865] updated Propel to 1.4.1 (closes #8131)
+ * [26681] fixed format_currency is rounding bad (closes #6788)
+ * [25459] added the module name when including a partial in the admin generator
+ * [25458] updated Turkish translations of the admin generator (closes #7928, patch by metoikos)
+ * [25411] changed project:validate task to generate less false positive (closes #7852)
+ * [25406] removed duplicate is_string check in sfWebController (closes #7918)
+ * [25218] Fixing issue with disablePlugin() static method being called publicly while being defined protected
+
+12/08/09: Version 1.4.1
+-----------------------
+
+ * [25063] updated class manipulator to work with mixed eol styles and no eol (closes #7694)
+ * [25051] fixed typos in plugin manager
+ * [25036] fixed php notices when test:* tasks are run outside of a command applications
+ * [24993] updated checking for logged trace to be a bit more responsible (closes #7817)
+ * [24992] added test coverage for testing browser redirects (refs #7823)
+ * [24986] patched class manipulator to work with source that uses an eol other than PHP_EOL (closes #7694)
+ * [24976] added translation for "Back To List" for German and Polish (fixes #7819)
+ * [24972] added files not included in r24970
+ * [24971] fixed sfFormDoctrine::removeFile fails to remove files (closes #7771)
+ * [24970] fixed inclusion of linked doctrine schema files (closes #7774, thanks esycat)
+ * [24962] using var export on serialisation to prevent invalid php code (fixes #7802)
+ * [24944] removed duplicate declaration of options member variable (fixes #7809)
+ * [24942] updated japanese translation of the admin generator (closes #7814 patch by river.bright)
+ * [24849] fixed typo (closes #7778)
+ * [24745] fixed replacing of tokens in doctrine stub and base model classes (closes #7656)
+ * [24705] optimized project:validate task
+ * [24703] Reverting r24632 (closes #6860)
+ * [24701] Fixing strict standards notice
+
+12/01/09: Version 1.4.0
+-----------------------
+
+ * [24637] fixed inconsistent case in doctrine crud (closes #7698, refs #5640)
+ * [24634] Catching Doctrine validation exceptions so you don't get internal server errors in admin generator if you use Doctrine validation
+ * [24632] Fixes issue with magic setters/getters for a field with a underscore and number at the end (closes #6860)
+ * [24628] updated date validator to ignore date_format option if tainted value is an array (closes #7753, #7702)
+ * [24625] updated doctrine:dql task to render NULL for null values when in table mode (closes #7680)
+ * [24624] fixed warning with sfValidatorDate.class when a non string option was passed to it (fixes #7753, #7702)
+ * [24622] allowed `__()` and `sfI18N->__()` and `sfMessageFormat->format()` to take an object with a `__toString()` method. Test case for 1.2,1.3 and 1.4 (fixes #7559, #6763, refs #2161)
+ * [24621] fixed column name used when generating propel route collections (refs #5572, #6773)
+ * [24620] fixed module option being ignored in *:generate-admin task (closes #5572, #6773)
+ * [24619] fixed incorrect array access of lastModified header which only was an array pre 1.0. This was effectively preventing 304 Not Modified response from working correctly. Fixed phpdoc referring to array as return type of getHttpHeader() (fixes #6633, #7539)
+ * [24618] Removing sfDoctrineRecordListener class which is not used (closes #7265)
+ * [24617] Fixes issue with base model classes not having tokens replaced from properties.ini (closes #7656)
+ * [24615] updated page and action caching to consider GET parameters (closes #4708)
+ * [24607] no longer adding duplicate entries in sfMemcacheCache.class metadata cache when key is already existing (fixes #7602)
+ * [24606] Fixing sfDoctrineRecord::__call() so proper exception is thrown (closes #7212)
+ * [24605] refactored sfWidgetFormDate.class to allow easier extension and tests, as well as being easier to read (closes #7699)
+ * [24604] Fix issue where local is an array (closes #6820)
+ * [24598] Fixes issue with attributes in databases.yml (closes #6884)
+ * [24597] fixed casting of propel i18n objects to string (closes #7709)
+ * [24593] removed old lazy_cache_key setting from generator (closes #7720)
+ * [24591] added requirements to DELETE action of sfObjectRouteCollection.class.php (fixes #7634)
+ * [24590] fixed obtaining error from mysqli session storage (fixes #7737)
+ * [24537] decoupled relation name from form field name when calling embedRelation(), allowed embedding of type "one" relations
+ * [24532] updated spanish and basque translation of admin generator (fixes #7735 thanks Javier.Eguiluz)
+ * [24531] fixed sfPager::count() implementation (it is more useful to return the total number of items, closes #7651)
+ * [24524] fixed regression when cleaning a date string that includes a timezone in new `DateTime` implementation, added appropriate regression test to 1.2
+ * [24514] improved vary cache generation. added unit test (refs #7605)
+ * [24513] fixed vary cache key again (fixes #7605)
+ * [24511] correctly closing output buffering in case of exceptions while requiring a file in sfPHPView (fixes #7596)
+ * [24498] fixed getObjectsForParameters() failing on second invocation on sfDoctrineRoute.class.php (fixes #7716)
+ * [24496] added missing where condition on culture to SfPropelBehaviorI18n (fixes #7713)
+ * [24470] added a project:validate task that validates the project against the deprecated stuff
+ * [24396] reset the mb_internal_encoding in case it was changed in text helpers. added basic unit test for that (fixes #7641)
+ * [24395] updated upgrade task to specify a class for the common filter since it's no longer specified in the core (closes #7156, #7536)
+ * [24390] removed call to deprecated sh() method
+ * [24341] fixed fatal error in doctrine build/drop db tasks when no application exists (closes #7686, refs #7633)
+ * [24339] optimized unshift of i18n filter to doctrine tables. big performance boost if you're working with many doctrine i18n records from the same table (closes #7392)
+ * [24331] updated log:rotate to explicitly sort files by name and use filesystem methods when possible (closes #7683)
+
+11/23/09: Version 1.4.0 RC2
+---------------------------
+
+ * [24295] removed deprecated `sfDoctrinePlugin_doctrine_lib_path` setting - use `sf_doctrine_dir` instead
+ * [24294] Fixing issue with generators not respecting options of the parent who generated it (fixes #7639)
+ * [24293] added missing API for getting Parameters of an sfRoute instance (closes #7632)
+ * [24292] reverted the removal of the common filter when upgrading due to backward compatibility concerns. filter is still omitted for new projects (closes #7678)
+ * [24288] fixed defaulting to first app when running a task with a project configuration already set (closes #7633, refs #5835)
+ * [24281] added back the common filter to ease upgrading existing website (the default is still the same though) (refs #7657)
+ * [24279] added missing PHPDoc (closes #7672)
+ * [24278] added getOptions method to sfForm (closes #7613)
+ * [24277] made exception messages more helpful (closes #7627)
+ * [24275] added references to the reference guide in generated configuration files
+ * [24271] updated token replacement in doctrine-generated model classes to disallow recursion into directories
+ * [24270] updated token replacement in doctrine-generated model classes to allow recursion into plugin and base directories
+ * [24265] fixed doc comments (closes #7664, #7666)
+ * [24217] fixed embedded forms in functional tests (closes #7653)
+ * [24215] fixed missing actions_base_class for Doctrine Generator (closes #7655, refs #5995)
+ * [24150] enhanced doctrine:dql task to accept query parameters and render how long a query took
+ * [24148] fixed forcing of colors in test:coverage task
+ * [24137] fixed invalid id attributes generation in sfWidgetForm (closes #6980, based on a patch from Leon.van.der.Ree)
+ * [24134] reverted yaml style (closes #7624)
+ * [24132] fixed sfWidgetFormInputFileEditable (closes #7621)
+ * [24130] fixed typo in propel I18N behavior
+ * [24094] updated czech admin generator translation (fixes #7610, thanks to Pavel.Campr)
+ * [24093] updated greek admin generator translation (fixes #7608, thanks to Zapantis Antreas)
+ * [24092] updated polish admin generator translation (fixes #7608, thanks to m)
+ * [24091] updated italian admin generator translation (fixes #7606, thanks to alexodus71)
+
+11/16/09: Version 1.4.0 RC1
+---------------------------
+
+ * [24071] added script to help with formatting Subversion log for CHANGELOG
+ * [24069] cleaned up template paths shown in WDT view panel
+ * [24068] added check for generate*Filename method on form object to handle naming uploading files (closes #7350)
+ * [24063] cleaned up generator templates (closes #7600)
+ * [24062] fixed issue with autoloading not correctly sorted in windows (fixes #7226)
+ * [24061] removed unneeded calls to setDefaultParameters by checking for a dirty flag.
+ * [24060] added database arguments to doctrine create and drop database tasks (closes #7351)
+ * [24056] reverted r23117 (refs #7363, closes #7456)
+ * [24051] made all generated base classes abstract (closes #7301)
+ * [24048] switched lime to new version 1.0.8
+ * [24045] renamed listCredentials() as getCredentials(), removed the former in 1.4 (closes #7443)
+ * [24043] added generic accessor for security.yml values
+ * [24037] deprecated loading of helpers from the include path
+ * [24036] fixed a bug with the / route that was made visible by r24026 (fixes #7597)
+ * [24033] removed unnecessary call to sfConfig
+ * [24032] moved project:optimize cache from project to application configuration
+ * [24027] changed components dependencies to use the 1.0 branch
+ * [24021] added short circuit checking for a static route prefix. Improves performance with many routes by up to 25%
+ * [24020] added loadHelpers to project:optimize (closes #4556)
+ * [24018] fixed command.* events not firing from generate:app task
+ * [24015] Static texts in native widgets are translated by default (fixes #7590, patch by FabienP)
+ * [24013] updated functional test bootstrap so fixture cache is always cleared before the context is created
+ * [24012] Options within optgroups are translated correctly, optgroup labels are translated as well (fixes #7591)
+ * [24008] ported r23909 to Propel 1.4 I18N behavior
+ * [24007] removed unnecessary calls to sfConfig, cleaned up shortening of paths used in exception messages
+ * [23995] reduced size of serialized sfRoute slightly due to the fact that defaultParameters will be always reset and compiled will be always true
+ * [23994] Moved get/setParent() from sfWidgetFormSchema to sfWidgetForm. The choices of all select/choice widgets are now translated by default (fixes #5886)
+ * [23993] removed obsolete setDefaultParameter code in routing
+ * [23984] not setting status header for servers in cgi-sapi mode (fixes #3191)
+ * [23977] fixed image saving for Doctrine
+ * [23968] fixed i18n functional test not using deprectated redirect checking
+ * [23967] corrected problem with validation when i18n is used. i18n should not be taken into account when the object is new (fixes #7486, patch by Dejan.Spasic)
+ * [23954] updated phpdoc to reflect the actual possibilities for redirect parameters (refs #6082)
+ * [23953] made empty redirect check faster and type tolerant (fixes #6082)
+ * [23951] fixed file validator on certain mac os configurations (closes #6641)
+ * [23950] fixed doctrine modules when dealing with multiple primary keys (closes #7571)
+ * [23948] improved searching for symfony script file on windows (closes #6914)
+ * [23930] fixed defaults for singular and plural name for generate crud tasks in case none are specified (refs #5640)
+ * [23927] added a new option to change the generator class for forms and filters (closes #5014, patch from joostdj)
+ * [23925] fixed sfMemcacheCache delete() operation (closes #6220)
+ * [23924] fixed defaults for singular and plural name for generate crud tasks in case none are specified (refs #5640)
+ * [23923] changed the routing handler cache file so that it consumes less memory
+ * [23919] made crud generator respect singular and plural name (fixes #5640, patch by Dejan.Spasic)
+ * [23917] Added sfFormField and sfFormFieldSchema to the safe classes in sfView. Widgets are always expected to be escaped by the developers! (fixes #7560, patch by nicolas)
+ * [23915] added unit test for sfSessionStorage (closes #7585, patch by Rubino)
+ * [23911] improved sfApplicationConfiguration getXYZDir caching when not using the project optimize task, by lazy caching (fixes #6413)
+ * [23910] changed CLI tests to use the new admin generator instead of the old one
+ * [23909] updated SfObjectBuilder so that Propel objects do not query the I18N table when they are new (fixes #7513, patch by joostdj)
+ * [23907] improved sfApplicationConfiguration getXYZDir caching when not using the project optimize task, by lazy caching (fixes #6413)
+ * [23901] The last exception is reset on every new page call in functional tests (fixes #6342, patch by Stefan.Koopmanschap)
+ * [23900] Default fields are created for %%variables%% in the title of the edit, list and new action, if possible. Closes #7578
+ * [23897] updated sfProtoculous javascript externals
+ * [23896] switched phing external to 2.3.3 tag instead of its revision in the trunk
+ * [23892] added Countable and Iterator interface to DOM CSS selector
+ * [23888] reporting error on empty url for sfWebController#redirect (fixes #6082, patch by ThijsFeryn )
+ * [23887] fixed Phing autoloading in upgrade task (fixes #7577, patch by Stefan.Koopmanschap)
+ * [23882] sfI18N now correctly rejects invalid dates when using a culture that has the dot as separator, and correctly respects am/pm markers (fixes #7582)
+ * [23852] fixed assumption in propel upgrade (closes #7577)
+ * [23849] removed reference to removed file (closes #7563)
+ * [23822] fixed loading of application-less plugin autoloader when multiple plugins are enabled
+ * [23810] set svn:eol-style property to native and svn:keywords property to Id on all .php files
+ * [23799] removed need for runtime insertion of lowercase module name into *_module_config.yml.php files. The module name is already inserted correctly by the sfDefineEnvironmentConfigHandler. This improves especially performance for projects with some more entries in module/config/module.yml (fixes #2105)
+ * [23763] added some configuration to the project:send-emails task (number of messages and time limit)
+ * [23762] updated Swift Mailer to the latest 4.1 version
View
35 lib/vendor/symfony/COPYRIGHT
@@ -19,41 +19,6 @@ Url: http://www.ibm.com/software/globalization/icu/, http://icu.sourceforg
Copyright: 1995-2006 International Business Machines Corporation and others.
License: ICU License - see licenses/LICENSE.ICU file
-Dynarch calendar
-----------------
-
-symfony contains the dynarch calendar software
-
-Url: http://www.dynarch.com/projects/calendar/
-Copyright: Mihai Bazon, 2002-2005
-License: LGPL - http://www.gnu.org/licenses/lgpl.html
-
-Prototype
----------
-
-symfony contains the Prototype software
-
-Url: http://prototype.conio.net/
-Copyright: 2005 Sam Stephenson
-License: MIT - see licenses/LICENSE.prototype file
-
-script.aculo.us
----------------
-
-symfony contains the script.aculo.us software
-
-Url: http://script.aculo.us, http://mir.aculo.us
-Copyright: 2005, 2006 Thomas Fuchs
-License: MIT - see licenses/LICENSE.script.aculo.us file
-
-famfamfam icons
----------------
-
-symfony contains a subset of the silk famfamfam icons
-
-Url: http://www.famfamfam.com/lab/icons/silk/
-License: http://creativecommons.org/licenses/by/2.5/
-
Prado i18n classes
------------------
View
6 lib/vendor/symfony/DEPRECATED_IN_1_3
@@ -1,6 +0,0 @@
-Deprecations and removals in 1.3
-================================
-
-The content of this file has been moved online at the following URL:
-
-http://www.symfony-project.org/tutorial/1_3/en/deprecated
View
6 lib/vendor/symfony/UPGRADE_TO_1_3
@@ -1,6 +0,0 @@
-Upgrading Projects from 1.2 to 1.3
-==================================
-
-The content of this file has been moved online at the following URL:
-
-http://www.symfony-project.org/tutorial/1_3/en/upgrade
View
6 lib/vendor/symfony/WHATS_NEW
@@ -1,6 +0,0 @@
-What's new in symfony 1.3?
-==========================
-
-The content of this file has been moved online at the following URL:
-
-http://www.symfony-project.org/tutorial/1_3/en/whats-new
View
203 lib/vendor/symfony/data/web/sf/calendar/calendar-setup.js
@@ -1,203 +0,0 @@
-/* Copyright Mihai Bazon, 2002, 2003 | http://dynarch.com/mishoo/
- * ---------------------------------------------------------------------------
- *
- * The DHTML Calendar
- *
- * Details and latest version at:
- * http://dynarch.com/mishoo/calendar.epl
- *
- * This script is distributed under the GNU Lesser General Public License.
- * Read the entire license text here: http://www.gnu.org/licenses/lgpl.html
- *
- * This file defines helper functions for setting up the calendar. They are
- * intended to help non-programmers get a working calendar on their site
- * quickly. This script should not be seen as part of the calendar. It just
- * shows you what one can do with the calendar, while in the same time
- * providing a quick and simple method for setting it up. If you need
- * exhaustive customization of the calendar creation process feel free to
- * modify this code to suit your needs (this is recommended and much better
- * than modifying calendar.js itself).
- */
-
-// $Id: calendar-setup.js 3016 2006-12-11 12:49:54Z chtito $
-
-/**
- * This function "patches" an input field (or other element) to use a calendar
- * widget for date selection.
- *
- * The "params" is a single object that can have the following properties:
- *
- * prop. name | description
- * -------------------------------------------------------------------------------------------------
- * inputField | the ID of an input field to store the date
- * displayArea | the ID of a DIV or other element to show the date
- * button | ID of a button or other element that will trigger the calendar
- * eventName | event that will trigger the calendar, without the "on" prefix (default: "click")
- * ifFormat | date format that will be stored in the input field
- * daFormat | the date format that will be used to display the date in displayArea
- * singleClick | (true/false) wether the calendar is in single click mode or not (default: true)
- * firstDay | numeric: 0 to 6. "0" means display Sunday first, "1" means display Monday first, etc.
- * align | alignment (default: "Br"); if you don't know what's this see the calendar documentation
- * range | array with 2 elements. Default: [1900, 2999] -- the range of years available
- * weekNumbers | (true/false) if it's true (default) the calendar will display week numbers
- * flat | null or element ID; if not null the calendar will be a flat calendar having the parent with the given ID
- * flatCallback | function that receives a JS Date object and returns an URL to point the browser to (for flat calendar)
- * disableFunc | function that receives a JS Date object and should return true if that date has to be disabled in the calendar
- * onSelect | function that gets called when a date is selected. You don't _have_ to supply this (the default is generally okay)
- * onClose | function that gets called when the calendar is closed. [default]
- * onUpdate | function that gets called after the date is updated in the input field. Receives a reference to the calendar.
- * date | the date that the calendar will be initially displayed to
- * showsTime | default: false; if true the calendar will include a time selector
- * timeFormat | the time format; can be "12" or "24", default is "12"
- * electric | if true (default) then given fields/date areas are updated for each move; otherwise they're updated only on close
- * step | configures the step of the years in drop-down boxes; default: 2
- * position | configures the calendar absolute position; default: null
- * cache | if "true" (but default: "false") it will reuse the same calendar object, where possible
- * showOthers | if "true" (but default: "false") it will show days from other months too
- *
- * None of them is required, they all have default values. However, if you
- * pass none of "inputField", "displayArea" or "button" you'll get a warning
- * saying "nothing to setup".
- */
-Calendar.setup = function (params) {
- function param_default(pname, def) { if (typeof params[pname] == "undefined") { params[pname] = def; } };
-
- param_default("inputField", null);
- param_default("displayArea", null);
- param_default("button", null);
- param_default("eventName", "click");
- param_default("ifFormat", "%Y/%m/%d");
- param_default("daFormat", "%Y/%m/%d");
- param_default("singleClick", true);
- param_default("disableFunc", null);
- param_default("dateStatusFunc", params["disableFunc"]); // takes precedence if both are defined
- param_default("dateTooltipFunc", null);
- param_default("dateText", null);
- param_default("firstDay", null);
- param_default("align", "Br");
- param_default("range", [0000, 2999]);
- param_default("weekNumbers", true);
- param_default("flat", null);
- param_default("flatCallback", null);
- param_default("onSelect", null);
- param_default("onClose", null);
- param_default("onUpdate", null);
- param_default("date", null);
- param_default("showsTime", false);
- param_default("timeFormat", "24");
- param_default("electric", true);
- param_default("step", 2);
- param_default("position", null);
- param_default("cache", false);
- param_default("showOthers", false);
- param_default("multiple", null);
-
- var tmp = ["inputField", "displayArea", "button"];
- for (var i in tmp) {
- if (typeof params[tmp[i]] == "string") {
- params[tmp[i]] = document.getElementById(params[tmp[i]]);
- }
- }
- if (!(params.flat || params.multiple || params.inputField || params.displayArea || params.button)) {
- alert("Calendar.setup:\n Nothing to setup (no fields found). Please check your code");
- return false;
- }
-
- function onSelect(cal) {
- var p = cal.params;
- var update = (cal.dateClicked || p.electric);
- if (update && p.inputField) {
- p.inputField.value = cal.date.print(p.ifFormat);
- if (typeof p.inputField.onchange == "function")
- p.inputField.onchange();
- }
- if (update && p.displayArea)
- p.displayArea.innerHTML = cal.date.print(p.daFormat);
- if (update && typeof p.onUpdate == "function")
- p.onUpdate(cal);
- if (update && p.flat) {
- if (typeof p.flatCallback == "function")
- p.flatCallback(cal);
- }
- if (update && p.singleClick && cal.dateClicked)
- cal.callCloseHandler();
- };
-
- if (params.flat != null) {
- if (typeof params.flat == "string")
- params.flat = document.getElementById(params.flat);
- if (!params.flat) {
- alert("Calendar.setup:\n Flat specified but can't find parent.");
- return false;
- }
- var cal = new Calendar(params.firstDay, params.date, params.onSelect || onSelect);
- cal.setDateToolTipHandler(params.dateTooltipFunc);
- cal.showsOtherMonths = params.showOthers;
- cal.showsTime = params.showsTime;
- cal.time24 = (params.timeFormat == "24");
- cal.params = params;
- cal.weekNumbers = params.weekNumbers;
- cal.setRange(params.range[0], params.range[1]);
- cal.setDateStatusHandler(params.dateStatusFunc);
- cal.getDateText = params.dateText;
- if (params.ifFormat) {
- cal.setDateFormat(params.ifFormat);
- }
- if (params.inputField && typeof params.inputField.value == "string") {
- cal.parseDate(params.inputField.value);
- }
- cal.create(params.flat);
- cal.show();
- return false;
- }
-
- var triggerEl = params.button || params.displayArea || params.inputField;
- triggerEl["on" + params.eventName] = function() {
- var dateEl = params.inputField || params.displayArea;
- var dateFmt = params.inputField ? params.ifFormat : params.daFormat;
- var mustCreate = false;
- var cal = window.calendar;
- if (dateEl)
- params.date = Date.parseDate(dateEl.value || dateEl.innerHTML, dateFmt);
- if (!(cal && params.cache)) {
- window.calendar = cal = new Calendar(params.firstDay,
- params.date,
- params.onSelect || onSelect,
- params.onClose || function(cal) { cal.hide(); });
- cal.setDateToolTipHandler(params.dateTooltipFunc);
- cal.showsTime = params.showsTime;
- cal.time24 = (params.timeFormat == "24");
- cal.weekNumbers = params.weekNumbers;
- mustCreate = true;
- } else {
- if (params.date)
- cal.setDate(params.date);
- cal.hide();
- }
- if (params.multiple) {
- cal.multiple = {};
- for (var i = params.multiple.length; --i >= 0;) {
- var d = params.multiple[i];
- var ds = d.print("%Y%m%d");
- cal.multiple[ds] = d;
- }
- }
- cal.showsOtherMonths = params.showOthers;
- cal.yearStep = params.step;
- cal.setRange(params.range[0], params.range[1]);
- cal.params = params;
- cal.setDateStatusHandler(params.dateStatusFunc);
- cal.getDateText = params.dateText;
- cal.setDateFormat(dateFmt);
- if (mustCreate)
- cal.create();
- cal.refresh();
- if (!params.position)
- cal.showAtElement(params.button || params.displayArea || params.inputField, params.align);
- else
- cal.showAt(params.position[0], params.position[1]);
- return false;
- };
-
- return cal;
-};
View
252 lib/vendor/symfony/data/web/sf/calendar/calendar-system.css
@@ -1,252 +0,0 @@
-/* The main calendar widget. DIV containing a table. */
-
-.calendar {
- position: relative;
- display: none;
- border: 1px solid;
- border-color: #fff #000 #000 #fff;
- font-size: 11px;
- cursor: default;
- background: Window;
- color: WindowText;
- font-family: tahoma,verdana,sans-serif;
- z-index: 10;
-}
-
-.calendar table {
- border: 1px solid;
- border-color: #fff #000 #000 #fff;
- font-size: 11px;
- cursor: default;
- background: Window;
- color: WindowText;
- font-family: tahoma,verdana,sans-serif;
-}
-
-/* Header part -- contains navigation buttons and day names. */
-
-.calendar .button { /* "<<", "<", ">", ">>" buttons have this class */
- text-align: center;
- padding: 1px;
- border: 1px solid;
- border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;
- background: ButtonFace;
-}
-
-.calendar .nav {
- background: ButtonFace url(menuarrow.gif) no-repeat 100% 100%;
-}
-
-.calendar thead .title { /* This holds the current "month, year" */
- font-weight: bold;
- padding: 1px;
- border: 1px solid #000;
- background: ActiveCaption;
- color: CaptionText;
- text-align: center;
-}
-
-.calendar thead .headrow { /* Row <TR> containing navigation buttons */
-}
-
-.calendar thead .daynames { /* Row <TR> containing the day names */
-}
-
-.calendar thead .name { /* Cells <TD> containing the day names */
- border-bottom: 1px solid ButtonShadow;
- padding: 2px;
- text-align: center;
- background: ButtonFace;
- color: ButtonText;
-}
-
-.calendar thead .weekend { /* How a weekend day name shows in header */
- color: #f00;
-}
-
-.calendar thead .hilite { /* How do the buttons in header appear when hover */
- border: 2px solid;
- padding: 0px;
- border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;
-}
-
-.calendar thead .active { /* Active (pressed) buttons in header */
- border-width: 1px;
- padding: 2px 0px 0px 2px;
- border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow;
-}
-
-/* The body part -- contains all the days in month. */
-
-.calendar tbody .day { /* Cells <TD> containing month days dates */
- width: 2em;
- text-align: right;
- padding: 2px 4px 2px 2px;
-}
-.calendar tbody .day.othermonth {
- font-size: 80%;
- color: #aaa;
-}
-.calendar tbody .day.othermonth.oweekend {
- color: #faa;
-}
-
-.calendar table .wn {
- padding: 2px 3px 2px 2px;
- border-right: 1px solid ButtonShadow;
- background: ButtonFace;
- color: ButtonText;
-}
-
-.calendar tbody .rowhilite td {
- background: Highlight;
- color: HighlightText;
-}
-
-.calendar tbody td.hilite { /* Hovered cells <TD> */
- padding: 1px 3px 1px 1px;
- border-top: 1px solid #fff;
- border-right: 1px solid #000;
- border-bottom: 1px solid #000;
- border-left: 1px solid #fff;
-}
-
-.calendar tbody td.active { /* Active (pressed) cells <TD> */
- padding: 2px 2px 0px 2px;
- border: 1px solid;
- border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow;
-}
-
-.calendar tbody td.selected { /* Cell showing selected date */
- font-weight: bold;
- border: 1px solid;
- border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow;
- padding: 2px 2px 0px 2px;
- background: ButtonFace;
- color: ButtonText;
-}
-
-.calendar tbody td.weekend { /* Cells showing weekend days */
- color: #f00;
-}
-
-.calendar tbody td.today { /* Cell showing today date */
- font-weight: bold;
- color: #00f;
-}
-
-.calendar tbody td.disabled { color: GrayText; }
-
-.calendar tbody .emptycell { /* Empty cells (the best is to hide them) */
- visibility: hidden;
-}
-
-.calendar tbody .emptyrow { /* Empty row (some months need less than 6 rows) */
- display: none;
-}
-
-/* The footer part -- status bar and "Close" button */
-
-.calendar tfoot .footrow { /* The <TR> in footer (only one right now) */
-}
-
-.calendar tfoot .ttip { /* Tooltip (status bar) cell <TD> */
- background: ButtonFace;
- padding: 1px;
- border: 1px solid;
- border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow;
- color: ButtonText;
- text-align: center;
-}
-
-.calendar tfoot .hilite { /* Hover style for buttons in footer */
- border-top: 1px solid #fff;
- border-right: 1px solid #000;
- border-bottom: 1px solid #000;
- border-left: 1px solid #fff;
- padding: 1px;
- background: #e4e0d8;
-}
-
-.calendar tfoot .active { /* Active (pressed) style for buttons in footer */
- padding: 2px 0px 0px 2px;
- border-top: 1px solid #000;
- border-right: 1px solid #fff;
- border-bottom: 1px solid #fff;
- border-left: 1px solid #000;
-}
-
-/* Combo boxes (menus that display months/years for direct selection) */
-
-.calendar .combo {
- position: absolute;
- display: none;
- width: 4em;
- top: 0px;
- left: 0px;
- cursor: default;
- border: 1px solid;
- border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;
- background: Menu;
- color: MenuText;
- font-size: 90%;
- padding: 1px;
- z-index: 100;
-}
-
-.calendar .combo .label,
-.calendar .combo .label-IEfix {
- text-align: center;
- padding: 1px;
-}
-
-.calendar .combo .label-IEfix {
- width: 4em;
-}
-
-.calendar .combo .active {
- padding: 0px;
- border: 1px solid #000;
-}
-
-.calendar .combo .hilite {
- background: Highlight;
- color: HighlightText;
-}
-
-.calendar td.time {
- border-top: 1px solid ButtonShadow;
- padding: 1px 0px;
- text-align: center;
- background-color: ButtonFace;
-}
-
-.calendar td.time .hour,
-.calendar td.time .minute,
-.calendar td.time .ampm {
- padding: 0px 3px 0px 4px;
- border: 1px solid #889;
- font-weight: bold;
- background-color: Menu;
-}
-
-.calendar td.time .ampm {
- text-align: center;
-}
-
-.calendar td.time .colon {
- padding: 0px 2px 0px 3px;
- font-weight: bold;
-}
-
-.calendar td.time span.hilite {
- border-color: #000;
- background-color: Highlight;
- color: HighlightText;
-}
-
-.calendar td.time span.active {
- border-color: #f00;
- background-color: #000;
- color: #0f0;
-}
View
1,806 lib/vendor/symfony/data/web/sf/calendar/calendar.js
@@ -1,1806 +0,0 @@
-/* Copyright Mihai Bazon, 2002-2005 | www.bazon.net/mishoo
- * -----------------------------------------------------------
- *
- * The DHTML Calendar, version 1.0 "It is happening again"
- *
- * Details and latest version at:
- * www.dynarch.com/projects/calendar
- *
- * This script is developed by Dynarch.com. Visit us at www.dynarch.com.
- *
- * This script is distributed under the GNU Lesser General Public License.
- * Read the entire license text here: http://www.gnu.org/licenses/lgpl.html
- */
-
-// $Id: calendar.js 12837 2008-11-09 16:45:45Z FabianLange $
-
-/** The Calendar object constructor. */
-Calendar = function (firstDayOfWeek, dateStr, onSelected, onClose) {
- // member variables
- this.activeDiv = null;
- this.currentDateEl = null;
- this.getDateStatus = null;
- this.getDateToolTip = null;
- this.getDateText = null;
- this.timeout = null;
- this.onSelected = onSelected || null;
- this.onClose = onClose || null;
- this.dragging = false;
- this.hidden = false;
- this.minYear = 1970;
- this.maxYear = 2050;
- this.dateFormat = Calendar._TT["DEF_DATE_FORMAT"];
- this.ttDateFormat = Calendar._TT["TT_DATE_FORMAT"];
- this.isPopup = true;
- this.weekNumbers = true;
- this.firstDayOfWeek = typeof firstDayOfWeek == "number" ? firstDayOfWeek : Calendar._FD; // 0 for Sunday, 1 for Monday, etc.
- this.showsOtherMonths = false;
- this.dateStr = dateStr;
- this.ar_days = null;
- this.showsTime = false;
- this.time24 = true;
- this.yearStep = 2;
- this.hiliteToday = true;
- this.multiple = null;
- // HTML elements
- this.table = null;
- this.element = null;
- this.tbody = null;
- this.firstdayname = null;
- // Combo boxes
- this.monthsCombo = null;
- this.yearsCombo = null;
- this.hilitedMonth = null;
- this.activeMonth = null;
- this.hilitedYear = null;
- this.activeYear = null;
- // Information
- this.dateClicked = false;
-
- // one-time initializations
- if (typeof Calendar._SDN == "undefined") {
- // table of short day names
- if (typeof Calendar._SDN_len == "undefined")
- Calendar._SDN_len = 3;
- var ar = new Array();
- for (var i = 8; i > 0;) {
- ar[--i] = Calendar._DN[i].substr(0, Calendar._SDN_len);
- }
- Calendar._SDN = ar;
- // table of short month names
- if (typeof Calendar._SMN_len == "undefined")
- Calendar._SMN_len = 3;
- ar = new Array();
- for (var i = 12; i > 0;) {
- ar[--i] = Calendar._MN[i].substr(0, Calendar._SMN_len);
- }
- Calendar._SMN = ar;
- }
-};
-
-// ** constants
-
-/// "static", needed for event handlers.
-Calendar._C = null;
-
-/// detect a special case of "web browser"
-Calendar.is_ie = ( /msie/i.test(navigator.userAgent) &&
- !/opera/i.test(navigator.userAgent) );
-
-Calendar.is_ie5 = ( Calendar.is_ie && /msie 5\.0/i.test(navigator.userAgent) );
-
-/// detect Opera browser
-Calendar.is_opera = /opera/i.test(navigator.userAgent);
-
-/// detect KHTML-based browsers
-Calendar.is_khtml = /Konqueror|Safari|KHTML/i.test(navigator.userAgent);
-
-// BEGIN: UTILITY FUNCTIONS; beware that these might be moved into a separate
-// library, at some point.
-
-Calendar.getAbsolutePos = function(el) {
- var SL = 0, ST = 0;
- var is_div = /^div$/i.test(el.tagName);
- if (is_div && el.scrollLeft)
- SL = el.scrollLeft;
- if (is_div && el.scrollTop)
- ST = el.scrollTop;
- var r = { x: el.offsetLeft - SL, y: el.offsetTop - ST };
- if (el.offsetParent) {
- var tmp = this.getAbsolutePos(el.offsetParent);
- r.x += tmp.x;
- r.y += tmp.y;
- }
- return r;
-};
-
-Calendar.isRelated = function (el, evt) {
- var related = evt.relatedTarget;
- if (!related) {
- var type = evt.type;
- if (type == "mouseover") {
- related = evt.fromElement;
- } else if (type == "mouseout") {
- related = evt.toElement;
- }
- }
- while (related) {
- if (related == el) {
- return true;
- }
- related = related.parentNode;
- }
- return false;
-};
-
-Calendar.removeClass = function(el, className) {
- if (!(el && el.className)) {
- return;
- }
- var cls = el.className.split(" ");
- var ar = new Array();
- for (var i = cls.length; i > 0;) {
- if (cls[--i] != className) {
- ar[ar.length] = cls[i];
- }
- }
- el.className = ar.join(" ");
-};
-
-Calendar.addClass = function(el, className) {
- Calendar.removeClass(el, className);
- el.className += " " + className;
-};
-
-// FIXME: the following 2 functions totally suck, are useless and should be replaced immediately.
-Calendar.getElement = function(ev) {
- var f = Calendar.is_ie ? window.event.srcElement : ev.currentTarget;
- while (f.nodeType != 1 || /^div$/i.test(f.tagName))
- f = f.parentNode;
- return f;
-};
-
-Calendar.getTargetElement = function(ev) {
- var f = Calendar.is_ie ? window.event.srcElement : ev.target;
- while (f.nodeType != 1)
- f = f.parentNode;
- return f;
-};
-
-Calendar.stopEvent = function(ev) {
- ev || (ev = window.event);
- if (Calendar.is_ie) {
- ev.cancelBubble = true;
- ev.returnValue = false;
- } else {
- ev.preventDefault();
- ev.stopPropagation();
- }
- return false;
-};
-
-Calendar.addEvent = function(el, evname, func) {
- if (el.attachEvent) { // IE
- el.attachEvent("on" + evname, func);
- } else if (el.addEventListener) { // Gecko / W3C
- el.addEventListener(evname, func, true);
- } else {
- el["on" + evname] = func;
- }
-};
-
-Calendar.removeEvent = function(el, evname, func) {
- if (el.detachEvent) { // IE
- el.detachEvent("on" + evname, func);
- } else if (el.removeEventListener) { // Gecko / W3C
- el.removeEventListener(evname, func, true);
- } else {
- el["on" + evname] = null;
- }
-};
-
-Calendar.createElement = function(type, parent) {
- var el = null;
- if (document.createElementNS) {
- // use the XHTML namespace; IE won't normally get here unless
- // _they_ "fix" the DOM2 implementation.
- el = document.createElementNS("http://www.w3.org/1999/xhtml", type);
- } else {
- el = document.createElement(type);
- }
- if (typeof parent != "undefined") {
- parent.appendChild(el);
- }
- return el;
-};
-
-// END: UTILITY FUNCTIONS
-
-// BEGIN: CALENDAR STATIC FUNCTIONS
-
-/** Internal -- adds a set of events to make some element behave like a button. */
-Calendar._add_evs = function(el) {
- with (Calendar) {
- addEvent(el, "mouseover", dayMouseOver);
- addEvent(el, "mousedown", dayMouseDown);
- addEvent(el, "mouseout", dayMouseOut);
- if (is_ie) {
- addEvent(el, "dblclick", dayMouseDblClick);
- el.setAttribute("unselectable", true);
- }
- }
-};
-
-Calendar.findMonth = function(el) {
- if (typeof el.month != "undefined") {
- return el;
- } else if (typeof el.parentNode.month != "undefined") {
- return el.parentNode;
- }
- return null;
-};
-
-Calendar.findYear = function(el) {
- if (typeof el.year != "undefined") {
- return el;
- } else if (typeof el.parentNode.year != "undefined") {
- return el.parentNode;
- }
- return null;
-};
-
-Calendar.showMonthsCombo = function () {
- var cal = Calendar._C;
- if (!cal) {
- return false;
- }
- var cal = cal;
- var cd = cal.activeDiv;
- var mc = cal.monthsCombo;
- if (cal.hilitedMonth) {
- Calendar.removeClass(cal.hilitedMonth, "hilite");
- }
- if (cal.activeMonth) {
- Calendar.removeClass(cal.activeMonth, "active");
- }
- var mon = cal.monthsCombo.getElementsByTagName("div")[cal.date.getMonth()];
- Calendar.addClass(mon, "active");
- cal.activeMonth = mon;
- var s = mc.style;
- s.display = "block";
- if (cd.navtype < 0)
- s.left = cd.offsetLeft + "px";
- else {
- var mcw = mc.offsetWidth;
- if (typeof mcw == "undefined")
- // Konqueror brain-dead techniques
- mcw = 50;
- s.left = (cd.offsetLeft + cd.offsetWidth - mcw) + "px";
- }
- s.top = (cd.offsetTop + cd.offsetHeight) + "px";
-};
-
-Calendar.showYearsCombo = function (fwd) {
- var cal = Calendar._C;
- if (!cal) {
- return false;
- }
- var cal = cal;
- var cd = cal.activeDiv;
- var yc = cal.yearsCombo;
- if (cal.hilitedYear) {
- Calendar.removeClass(cal.hilitedYear, "hilite");
- }
- if (cal.activeYear) {
- Calendar.removeClass(cal.activeYear, "active");
- }
- cal.activeYear = null;
- var Y = cal.date.getFullYear() + (fwd ? 1 : -1);
- var yr = yc.firstChild;
- var show = false;
- for (var i = 12; i > 0; --i) {
- if (Y >= cal.minYear && Y <= cal.maxYear) {
- yr.innerHTML = Y;
- yr.year = Y;
- yr.style.display = "block";
- show = true;
- } else {
- yr.style.display = "none";
- }
- yr = yr.nextSibling;
- Y += fwd ? cal.yearStep : -cal.yearStep;
- }
- if (show) {
- var s = yc.style;
- s.display = "block";
- if (cd.navtype < 0)
- s.left = cd.offsetLeft + "px";
- else {
- var ycw = yc.offsetWidth;
- if (typeof ycw == "undefined")
- // Konqueror brain-dead techniques
- ycw = 50;
- s.left = (cd.offsetLeft + cd.offsetWidth - ycw) + "px";
- }
- s.top = (cd.offsetTop + cd.offsetHeight) + "px";
- }
-};
-
-// event handlers
-
-Calendar.tableMouseUp = function(ev) {
- var cal = Calendar._C;
- if (!cal) {
- return false;
- }
- if (cal.timeout) {
- clearTimeout(cal.timeout);
- }
- var el = cal.activeDiv;
- if (!el) {
- return false;
- }
- var target = Calendar.getTargetElement(ev);
- ev || (ev = window.event);
- Calendar.removeClass(el, "active");
- if (target == el || target.parentNode == el) {
- Calendar.cellClick(el, ev);
- }
- var mon = Calendar.findMonth(target);
- var date = null;
- if (mon) {
- date = new Date(cal.date);
- if (mon.month != date.getMonth()) {
- date.setMonth(mon.month);
- cal.setDate(date);
- cal.dateClicked = false;
- cal.callHandler();
- }
- } else {
- var year = Calendar.findYear(target);
- if (year) {
- date = new Date(cal.date);
- if (year.year != date.getFullYear()) {
- date.setFullYear(year.year);
- cal.setDate(date);
- cal.dateClicked = false;
- cal.callHandler();
- }
- }
- }
- with (Calendar) {
- removeEvent(document, "mouseup", tableMouseUp);
- removeEvent(document, "mouseover", tableMouseOver);
- removeEvent(document, "mousemove", tableMouseOver);
- cal._hideCombos();
- _C = null;
- return stopEvent(ev);
- }
-};
-
-Calendar.tableMouseOver = function (ev) {
- var cal = Calendar._C;
- if (!cal) {
- return;
- }
- var el = cal.activeDiv;
- var target = Calendar.getTargetElement(ev);
- if (target == el || target.parentNode == el) {
- Calendar.addClass(el, "hilite active");
- Calendar.addClass(el.parentNode, "rowhilite");
- } else {
- if (typeof el.navtype == "undefined" || (el.navtype != 50 && (el.navtype == 0 || Math.abs(el.navtype) > 2)))
- Calendar.removeClass(el, "active");
- Calendar.removeClass(el, "hilite");
- Calendar.removeClass(el.parentNode, "rowhilite");
- }
- ev || (ev = window.event);
- if (el.navtype == 50 && target != el) {
- var pos = Calendar.getAbsolutePos(el);
- var w = el.offsetWidth;
- var x = ev.clientX;
- var dx;
- var decrease = true;
- if (x > pos.x + w) {
- dx = x - pos.x - w;
- decrease = false;
- } else
- dx = pos.x - x;
-
- if (dx < 0) dx = 0;
- var range = el._range;
- var current = el._current;
- var count = Math.floor(dx / 10) % range.length;
- for (var i = range.length; --i >= 0;)
- if (range[i] == current)
- break;
- while (count-- > 0)
- if (decrease) {
- if (--i < 0)
- i = range.length - 1;
- } else if ( ++i >= range.length )
- i = 0;
- var newval = range[i];
- el.innerHTML = newval;
-
- cal.onUpdateTime();
- }
- var mon = Calendar.findMonth(target);
- if (mon) {
- if (mon.month != cal.date.getMonth()) {
- if (cal.hilitedMonth) {
- Calendar.removeClass(cal.hilitedMonth, "hilite");
- }
- Calendar.addClass(mon, "hilite");
- cal.hilitedMonth = mon;
- } else if (cal.hilitedMonth) {
- Calendar.removeClass(cal.hilitedMonth, "hilite");
- }
- } else {
- if (cal.hilitedMonth) {
- Calendar.removeClass(cal.hilitedMonth, "hilite");
- }
- var year = Calendar.findYear(target);
- if (year) {
- if (year.year != cal.date.getFullYear()) {
- if (cal.hilitedYear) {
- Calendar.removeClass(cal.hilitedYear, "hilite");
- }
- Calendar.addClass(year, "hilite");
- cal.hilitedYear = year;
- } else if (cal.hilitedYear) {
- Calendar.removeClass(cal.hilitedYear, "hilite");
- }
- } else if (cal.hilitedYear) {
- Calendar.removeClass(cal.hilitedYear, "hilite");
- }
- }
- return Calendar.stopEvent(ev);
-};
-
-Calendar.tableMouseDown = function (ev) {
- if (Calendar.getTargetElement(ev) == Calendar.getElement(ev)) {
- return Calendar.stopEvent(ev);
- }
-};
-
-Calendar.calDragIt = function (ev) {
- var cal = Calendar._C;
- if (!(cal && cal.dragging)) {
- return false;
- }
- var posX;
- var posY;
- if (Calendar.is_ie) {
- posY = window.event.clientY + document.body.scrollTop;
- posX = window.event.clientX + document.body.scrollLeft;
- } else {
- posX = ev.pageX;
- posY = ev.pageY;
- }
- cal.hideShowCovered();
- var st = cal.element.style;
- st.left = (posX - cal.xOffs) + "px";
- st.top = (posY - cal.yOffs) + "px";
- return Calendar.stopEvent(ev);
-};
-
-Calendar.calDragEnd = function (ev) {
- var cal = Calendar._C;
- if (!cal) {
- return false;
- }
- cal.dragging = false;
- with (Calendar) {
- removeEvent(document, "mousemove", calDragIt);
- removeEvent(document, "mouseup", calDragEnd);
- tableMouseUp(ev);
- }
- cal.hideShowCovered();
-};
-
-Calendar.dayMouseDown = function(ev) {
- var el = Calendar.getElement(ev);
- if (el.disabled) {
- return false;
- }
- var cal = el.calendar;
- cal.activeDiv = el;
- Calendar._C = cal;
- if (el.navtype != 300) with (Calendar) {
- if (el.navtype == 50) {
- el._current = el.innerHTML;
- addEvent(document, "mousemove", tableMouseOver);
- } else
- addEvent(document, Calendar.is_ie5 ? "mousemove" : "mouseover", tableMouseOver);
- addClass(el, "hilite active");
- addEvent(document, "mouseup", tableMouseUp);
- } else if (cal.isPopup) {
- cal._dragStart(ev);
- }
- if (el.navtype == -1 || el.navtype == 1) {
- if (cal.timeout) clearTimeout(cal.timeout);
- cal.timeout = setTimeout("Calendar.showMonthsCombo()", 250);
- } else if (el.navtype == -2 || el.navtype == 2) {
- if (cal.timeout) clearTimeout(cal.timeout);
- cal.timeout = setTimeout((el.navtype > 0) ? "Calendar.showYearsCombo(true)" : "Calendar.showYearsCombo(false)", 250);
- } else {
- cal.timeout = null;
- }
- return Calendar.stopEvent(ev);
-};
-
-Calendar.dayMouseDblClick = function(ev) {
- Calendar.cellClick(Calendar.getElement(ev), ev || window.event);
- if (Calendar.is_ie) {
- document.selection.empty();
- }
-};
-
-Calendar.dayMouseOver = function(ev) {
- var el = Calendar.getElement(ev);
- if (Calendar.isRelated(el, ev) || Calendar._C || el.disabled) {
- return false;
- }
- if (el.ttip) {
- if (el.ttip.substr(0, 1) == "_") {
- el.ttip = el.caldate.print(el.calendar.ttDateFormat) + el.ttip.substr(1);
- }
- el.calendar.tooltips.innerHTML = el.ttip;
- }
- if (el.navtype != 300) {
- Calendar.addClass(el, "hilite");
- if (el.caldate) {
- Calendar.addClass(el.parentNode, "rowhilite");
- var cal = el.calendar;
- if (cal && cal.getDateToolTip) {
- var d = el.caldate;
- window.status = d;
- el.title = cal.getDateToolTip(d, d.getFullYear(), d.getMonth(), d.getDate());
- }
- }
- }
- return Calendar.stopEvent(ev);
-};
-
-Calendar.dayMouseOut = function(ev) {
- with (Calendar) {
- var el = getElement(ev);
- if (isRelated(el, ev) || _C || el.disabled)
- return false;
- removeClass(el, "hilite");
- if (el.caldate)
- removeClass(el.parentNode, "rowhilite");
- if (el.calendar)
- el.calendar.tooltips.innerHTML = _TT["SEL_DATE"];
- // return stopEvent(ev);
- }
-};
-
-/**
- * A generic "click" handler :) handles all types of buttons defined in this
- * calendar.
- */
-Calendar.cellClick = function(el, ev) {
- var cal = el.calendar;
- var closing = false;
- var newdate = false;
- var date = null;
- if (typeof el.navtype == "undefined") {
- if (cal.currentDateEl) {
- Calendar.removeClass(cal.currentDateEl, "selected");
- Calendar.addClass(el, "selected");
- closing = (cal.currentDateEl == el);
- if (!closing) {
- cal.currentDateEl = el;
- }
- }
- cal.date.setDateOnly(el.caldate);
- date = cal.date;
- var other_month = !(cal.dateClicked = !el.otherMonth);
- if (!other_month && !cal.currentDateEl && cal.multiple)
- cal._toggleMultipleDate(new Date(date));
- else
- newdate = !el.disabled;
- // a date was clicked
- if (other_month)
- cal._init(cal.firstDayOfWeek, date);
- } else {
- if (el.navtype == 200) {
- Calendar.removeClass(el, "hilite");
- cal.callCloseHandler();
- return;
- }
- date = new Date(cal.date);
- if (el.navtype == 0)
- date.setDateOnly(new Date()); // TODAY
- // unless "today" was clicked, we assume no date was clicked so
- // the selected handler will know not to close the calenar when
- // in single-click mode.
- // cal.dateClicked = (el.navtype == 0);
- cal.dateClicked = false;
- var year = date.getFullYear();
- var mon = date.getMonth();
- function setMonth(m) {
- var day = date.getDate();
- var max = date.getMonthDays(m);
- if (day > max) {
- date.setDate(max);
- }
- date.setMonth(m);
- };
- switch (el.navtype) {
- case 400:
- Calendar.removeClass(el, "hilite");
- var text = Calendar._TT["ABOUT"];
- if (typeof text != "undefined") {
- text += cal.showsTime ? Calendar._TT["ABOUT_TIME"] : "";
- } else {
- // FIXME: this should be removed as soon as lang files get updated!
- text = "Help and about box text is not translated into this language.\n" +
- "If you know this language and you feel generous please update\n" +
- "the corresponding file in \"lang\" subdir to match calendar-en.js\n" +
- "and send it back to <mihai_bazon@yahoo.com> to get it into the distribution ;-)\n\n" +
- "Thank you!\n" +
- "http://dynarch.com/mishoo/calendar.epl\n";
- }
- alert(text);
- return;
- case -2:
- if (year > cal.minYear) {
- date.setFullYear(year - 1);
- }
- break;
- case -1:
- if (mon > 0) {
- setMonth(mon - 1);
- } else if (year-- > cal.minYear) {
- date.setFullYear(year);
- setMonth(11);
- }
- break;
- case 1:
- if (mon < 11) {
- setMonth(mon + 1);
- } else if (year < cal.maxYear) {
- date.setFullYear(year + 1);
- setMonth(0);
- }
- break;
- case 2:
- if (year < cal.maxYear) {
- date.setFullYear(year + 1);
- }
- break;
- case 100:
- cal.setFirstDayOfWeek(el.fdow);
- return;
- case 50:
- var range = el._range;
- var current = el.innerHTML;
- for (var i = range.length; --i >= 0;)
- if (range[i] == current)
- break;
- if (ev && ev.shiftKey) {
- if (--i < 0)
- i = range.length - 1;
- } else if ( ++i >= range.length )
- i = 0;
- var newval = range[i];
- el.innerHTML = newval;
- cal.onUpdateTime();
- return;
- case 0:
- // TODAY will bring us here
- if ((typeof cal.getDateStatus == "function") &&
- cal.getDateStatus(date, date.getFullYear(), date.getMonth(), date.getDate())) {
- return false;
- }
- break;
- }
- if (!date.equalsTo(cal.date)) {
- cal.setDate(date);
- newdate = true;
- } else if (el.navtype == 0)
- newdate = closing = true;
- }
- if (newdate) {
- ev && cal.callHandler();
- }
- if (closing) {
- Calendar.removeClass(el, "hilite");
- ev && cal.callCloseHandler();
- }
-};
-
-// END: CALENDAR STATIC FUNCTIONS
-
-// BEGIN: CALENDAR OBJECT FUNCTIONS
-
-/**
- * This function creates the calendar inside the given parent. If _par is
- * null than it creates a popup calendar inside the BODY element. If _par is
- * an element, be it BODY, then it creates a non-popup calendar (still
- * hidden). Some properties need to be set before calling this function.
- */
-Calendar.prototype.create = function (_par) {
- var parent = null;
- if (! _par) {
- // default parent is the document body, in which case we create
- // a popup calendar.
- parent = document.getElementsByTagName("body")[0];
- this.isPopup = true;
- } else {
- parent = _par;
- this.isPopup = false;
- }
- this.date = this.dateStr ? new Date(this.dateStr) : new Date();
-
- var table = Calendar.createElement("table");
- this.table = table;
- table.cellSpacing = 0;
- table.cellPadding = 0;
- table.calendar = this;
- Calendar.addEvent(table, "mousedown", Calendar.tableMouseDown);
-
- var div = Calendar.createElement("div");
- this.element = div;
- div.className = "calendar";
- if (this.isPopup) {
- div.style.position = "absolute";
- div.style.display = "none";
- }
- div.appendChild(table);
-
- var thead