codeigniter_vender 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (393) hide show
  1. data/.gitignore +1 -0
  2. data/Gemfile +4 -0
  3. data/Gemfile.lock +10 -0
  4. data/README.md +39 -0
  5. data/Rakefile +4 -2
  6. data/VERSION +1 -1
  7. data/bin/ci +5 -0
  8. data/codeigniter_vender.gemspec +355 -344
  9. data/lib/codeigniter/commands/app.rb +5 -0
  10. data/lib/codeigniter/commands/help.rb +7 -0
  11. data/lib/codeigniter/commands.rb +19 -0
  12. data/lib/{tasks/app.rake → codeigniter/tasks/ci.rake} +1 -1
  13. data/lib/codeigniter_vender.rb +26 -1
  14. data/lib/generators/base.rb +11 -0
  15. data/{generators → lib/generators/ci}/ci_app/USAGE +0 -0
  16. data/lib/generators/ci/ci_app/ci_app_generator.rb +10 -0
  17. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/.htaccess +1 -0
  18. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/cache/.htaccess +1 -0
  19. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/application/config → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/cache}/index.html +0 -0
  20. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/config/autoload.php +18 -18
  21. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/config/config.php +62 -31
  22. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/config/constants.php +7 -7
  23. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/config/database.php +20 -13
  24. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/config/doctypes.php +1 -1
  25. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/config/foreign_chars.php +64 -0
  26. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/config/hooks.php +1 -1
  27. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/application/controllers → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/config}/index.html +0 -0
  28. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/config/mimes.php +5 -5
  29. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/config/profiler.php +17 -0
  30. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/config/routes.php +7 -9
  31. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/config/smileys.php +2 -2
  32. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/config/user_agents.php +7 -4
  33. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/application/errors → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/controllers}/index.html +0 -0
  34. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/controllers/welcome.php +17 -0
  35. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/application/helpers → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/core}/index.html +0 -0
  36. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/errors/error_404.php +1 -1
  37. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/errors/error_db.php +1 -1
  38. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/errors/error_general.php +1 -1
  39. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/errors/error_php.php +0 -0
  40. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/application/hooks → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/errors}/index.html +0 -0
  41. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/application → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/helpers}/index.html +0 -0
  42. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/application/language/english → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/hooks}/index.html +0 -0
  43. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/application/libraries → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application}/index.html +0 -0
  44. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/application/models → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/language/english}/index.html +0 -0
  45. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/application/views → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/libraries}/index.html +0 -0
  46. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/cache → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/logs}/index.html +0 -0
  47. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/codeigniter → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/models}/index.html +0 -0
  48. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/database/drivers → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/third_party}/index.html +0 -0
  49. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/database/drivers/mssql → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/application/views}/index.html +0 -0
  50. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/application/views/welcome_message.php +6 -4
  51. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/index.php +166 -0
  52. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/license.txt +1 -2
  53. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/.htaccess +1 -0
  54. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core}/Benchmark.php +5 -5
  55. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core/CodeIgniter.php +340 -0
  56. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core/Common.php +503 -0
  57. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core}/Config.php +126 -57
  58. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core/Controller.php +67 -0
  59. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core}/Exceptions.php +24 -20
  60. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core}/Hooks.php +14 -15
  61. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core/Input.php +652 -0
  62. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries/Language.php → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core/Lang.php} +33 -16
  63. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core}/Loader.php +374 -364
  64. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core/Model.php +56 -0
  65. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core}/Output.php +140 -93
  66. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core}/Router.php +185 -115
  67. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core}/URI.php +78 -58
  68. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core/Utf8.php +165 -0
  69. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/database/drivers/mysql → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/core}/index.html +0 -0
  70. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/DB.php +32 -27
  71. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/DB_active_rec.php +478 -225
  72. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/DB_cache.php +30 -30
  73. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/DB_driver.php +199 -175
  74. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/DB_forge.php +43 -36
  75. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/DB_result.php +115 -52
  76. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/DB_utility.php +69 -44
  77. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/database/drivers/mysqli → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/database/drivers}/index.html +0 -0
  78. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/database/drivers/oci8 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/database/drivers/mssql}/index.html +0 -0
  79. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mssql/mssql_driver.php +64 -67
  80. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mssql/mssql_forge.php +19 -19
  81. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mssql/mssql_result.php +14 -14
  82. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mssql/mssql_utility.php +3 -38
  83. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/database/drivers/odbc → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/database/drivers/mysql}/index.html +0 -0
  84. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mysql/mysql_driver.php +155 -63
  85. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mysql/mysql_forge.php +36 -21
  86. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mysql/mysql_result.php +14 -14
  87. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mysql/mysql_utility.php +25 -60
  88. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/database/drivers/postgre → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/database/drivers/mysqli}/index.html +0 -0
  89. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mysqli/mysqli_driver.php +131 -62
  90. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mysqli/mysqli_forge.php +17 -17
  91. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mysqli/mysqli_result.php +14 -14
  92. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/mysqli/mysqli_utility.php +4 -40
  93. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/database/drivers/sqlite → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/database/drivers/oci8}/index.html +0 -0
  94. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/oci8/oci8_driver.php +55 -58
  95. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/oci8/oci8_forge.php +18 -18
  96. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/oci8/oci8_result.php +17 -17
  97. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/oci8/oci8_utility.php +2 -37
  98. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/database → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/database/drivers/odbc}/index.html +0 -0
  99. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/odbc/odbc_driver.php +58 -61
  100. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/odbc/odbc_forge.php +21 -21
  101. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/odbc/odbc_result.php +11 -11
  102. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/odbc/odbc_utility.php +5 -50
  103. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/fonts → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/database/drivers/postgre}/index.html +0 -0
  104. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/postgre/postgre_driver.php +61 -61
  105. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/postgre/postgre_forge.php +84 -33
  106. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/postgre/postgre_result.php +11 -11
  107. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/postgre/postgre_utility.php +2 -38
  108. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/helpers → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/database/drivers/sqlite}/index.html +0 -0
  109. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/sqlite/sqlite_driver.php +65 -65
  110. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/sqlite/sqlite_forge.php +18 -18
  111. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/sqlite/sqlite_result.php +12 -12
  112. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/database/drivers/sqlite/sqlite_utility.php +3 -48
  113. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/database}/index.html +0 -0
  114. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/language/english → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/fonts}/index.html +0 -0
  115. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/fonts/texb.ttf +0 -0
  116. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/array_helper.php +46 -6
  117. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/helpers/captcha_helper.php +246 -0
  118. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/cookie_helper.php +7 -48
  119. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/date_helper.php +90 -90
  120. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/directory_helper.php +18 -22
  121. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/download_helper.php +8 -8
  122. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/email_helper.php +4 -4
  123. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/file_helper.php +45 -39
  124. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/form_helper.php +59 -35
  125. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/html_helper.php +20 -14
  126. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/language → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/helpers}/index.html +0 -0
  127. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/inflector_helper.php +27 -16
  128. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/language_helper.php +3 -3
  129. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/number_helper.php +15 -14
  130. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/path_helper.php +7 -7
  131. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/security_helper.php +49 -15
  132. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/smiley_helper.php +29 -23
  133. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/string_helper.php +45 -28
  134. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/text_helper.php +195 -124
  135. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/typography_helper.php +32 -9
  136. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/url_helper.php +17 -15
  137. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/helpers/xml_helper.php +21 -12
  138. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system}/index.html +0 -0
  139. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/language/english/calendar_lang.php +51 -0
  140. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/language/english/date_lang.php +1 -0
  141. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/language/english/db_lang.php +2 -1
  142. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/language/english/email_lang.php +0 -0
  143. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/language/english/form_validation_lang.php +5 -4
  144. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/language/english/ftp_lang.php +1 -0
  145. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/language/english/imglib_lang.php +0 -0
  146. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/logs → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/language/english}/index.html +0 -0
  147. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/language/english/number_lang.php +0 -0
  148. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/language/english/profiler_lang.php +4 -1
  149. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/language/english/unit_test_lang.php +1 -0
  150. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/language/english/upload_lang.php +0 -0
  151. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/plugins → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/language}/index.html +0 -0
  152. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries/Cache/Cache.php +216 -0
  153. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries/Cache/drivers/Cache_apc.php +151 -0
  154. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries/Cache/drivers/Cache_dummy.php +129 -0
  155. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries/Cache/drivers/Cache_file.php +196 -0
  156. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries/Cache/drivers/Cache_memcached.php +209 -0
  157. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Calendar.php +81 -83
  158. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Cart.php +73 -73
  159. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries/Driver.php +229 -0
  160. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Email.php +209 -188
  161. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Encrypt.php +78 -15
  162. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Form_validation.php +265 -228
  163. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Ftp.php +46 -4
  164. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Image_lib.php +36 -43
  165. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries/Javascript.php +871 -0
  166. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Log.php +29 -32
  167. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Pagination.php +64 -29
  168. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Parser.php +63 -24
  169. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries/Profiler.php +502 -0
  170. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries/Security.php +737 -0
  171. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Session.php +33 -16
  172. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Sha1.php +14 -14
  173. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Table.php +172 -84
  174. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Trackback.php +129 -128
  175. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Typography.php +84 -80
  176. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Unit_test.php +105 -69
  177. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Upload.php +273 -235
  178. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/User_agent.php +150 -115
  179. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Xmlrpc.php +193 -179
  180. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Xmlrpcs.php +91 -83
  181. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/system/libraries/Zip.php +110 -46
  182. data/{generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/images → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries}/index.html +0 -0
  183. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/system/libraries/javascript/Jquery.php +1071 -0
  184. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/changelog.html +182 -29
  185. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/active_record.html +48 -48
  186. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/caching.html +2 -2
  187. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/call_function.html +3 -3
  188. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/configuration.html +14 -5
  189. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/connecting.html +5 -3
  190. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/examples.html +2 -2
  191. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/fields.html +3 -3
  192. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/forge.html +3 -3
  193. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/helpers.html +2 -2
  194. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/index.html +3 -3
  195. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/queries.html +4 -4
  196. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/results.html +17 -17
  197. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/table_data.html +3 -3
  198. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/transactions.html +2 -2
  199. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/database/utilities.html +21 -2
  200. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/doc_style/index.html +4 -3
  201. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/doc_style/template.html +2 -2
  202. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/alternative_php.html +4 -4
  203. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/ancillary_classes.html +2 -2
  204. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/autoloader.html +3 -4
  205. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/caching.html +2 -2
  206. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/common_functions.html +9 -3
  207. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/controllers.html +32 -29
  208. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/core_classes.html +10 -9
  209. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/user_guide/general/creating_drivers.html +100 -0
  210. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/creating_libraries.html +8 -13
  211. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/credits.html +4 -4
  212. data/{generators/ci_app/templates/CodeIgniter_1.7.2/user_guide/general/profiling.html → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/user_guide/general/drivers.html} +21 -21
  213. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/errors.html +5 -3
  214. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/helpers.html +4 -4
  215. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/hooks.html +2 -4
  216. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/libraries.html +9 -5
  217. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/managing_apps.html +24 -24
  218. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/models.html +13 -13
  219. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/user_guide/general/profiling.html +176 -0
  220. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/quick_reference.html +2 -2
  221. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/requirements.html +3 -3
  222. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/reserved_names.html +4 -33
  223. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/routing.html +7 -17
  224. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/security.html +3 -3
  225. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/styleguide.html +71 -79
  226. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/urls.html +2 -2
  227. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/general/views.html +13 -13
  228. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/array_helper.html +53 -2
  229. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/user_guide/helpers/captcha_helper.html +195 -0
  230. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/user_guide/helpers/cookie_helper.html +107 -0
  231. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/date_helper.html +6 -6
  232. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/directory_helper.html +6 -6
  233. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/download_helper.html +2 -2
  234. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/email_helper.html +2 -2
  235. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/file_helper.html +5 -4
  236. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/form_helper.html +9 -9
  237. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/html_helper.html +6 -6
  238. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/inflector_helper.html +2 -2
  239. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/language_helper.html +2 -2
  240. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/number_helper.html +9 -3
  241. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/path_helper.html +2 -2
  242. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/security_helper.html +12 -5
  243. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/smiley_helper.html +12 -12
  244. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/string_helper.html +11 -9
  245. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/text_helper.html +21 -2
  246. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/typography_helper.html +2 -2
  247. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/url_helper.html +7 -8
  248. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/helpers/xml_helper.html +2 -2
  249. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/appflowchart.gif +0 -0
  250. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/arrow.gif +0 -0
  251. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/ci_logo.jpg +0 -0
  252. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/ci_logo_flame.jpg +0 -0
  253. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/ci_quick_ref.png +0 -0
  254. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/codeigniter_1.7.1_helper_reference.pdf +0 -0
  255. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/codeigniter_1.7.1_helper_reference.png +0 -0
  256. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/codeigniter_1.7.1_library_reference.pdf +0 -0
  257. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/codeigniter_1.7.1_library_reference.png +0 -0
  258. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/file.gif +0 -0
  259. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/folder.gif +0 -0
  260. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/nav_bg_darker.jpg +0 -0
  261. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/nav_separator_darker.jpg +0 -0
  262. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/nav_toggle_darker.jpg +0 -0
  263. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/user_guide/images/reactor-bullet.png +0 -0
  264. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/smile.gif +0 -0
  265. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/images/transparent.gif +0 -0
  266. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/index.html +2 -2
  267. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/downloads.html +10 -6
  268. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/index.html +10 -5
  269. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/troubleshooting.html +2 -2
  270. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_120.html +2 -2
  271. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_130.html +2 -2
  272. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_131.html +2 -2
  273. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_132.html +2 -2
  274. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_133.html +2 -2
  275. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_140.html +2 -2
  276. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_141.html +2 -2
  277. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_150.html +2 -2
  278. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_152.html +2 -2
  279. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_153.html +2 -2
  280. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_154.html +5 -5
  281. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_160.html +6 -6
  282. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_161.html +2 -2
  283. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_162.html +5 -5
  284. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_163.html +2 -2
  285. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_170.html +5 -5
  286. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_171.html +2 -2
  287. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_172.html +7 -3
  288. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/user_guide/installation/upgrade_200.html +131 -0
  289. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrade_b11.html +2 -2
  290. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/installation/upgrading.html +3 -2
  291. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/benchmark.html +4 -4
  292. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/user_guide/libraries/caching.html +193 -0
  293. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/calendar.html +3 -3
  294. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/cart.html +345 -345
  295. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/config.html +4 -4
  296. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/email.html +4 -4
  297. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/encryption.html +49 -7
  298. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/file_uploading.html +15 -15
  299. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/form_validation.html +22 -25
  300. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/ftp.html +21 -8
  301. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/image_lib.html +4 -3
  302. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/input.html +69 -31
  303. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/user_guide/libraries/javascript.html +246 -0
  304. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/language.html +3 -3
  305. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/loader.html +56 -15
  306. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/output.html +19 -2
  307. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/pagination.html +19 -8
  308. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/parser.html +6 -2
  309. data/lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0/user_guide/libraries/security.html +135 -0
  310. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/sessions.html +18 -7
  311. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/table.html +33 -10
  312. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/trackback.html +2 -2
  313. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/typography.html +5 -5
  314. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/unit_testing.html +27 -6
  315. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/uri.html +3 -3
  316. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/user_agent.html +27 -2
  317. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/xmlrpc.html +25 -23
  318. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/libraries/zip.html +13 -3
  319. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/license.html +3 -3
  320. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/nav/hacks.txt +2 -1
  321. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/nav/moo.fx.js +1 -37
  322. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/nav/nav.js +27 -24
  323. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/nav/prototype.lite.js +0 -0
  324. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/nav/user_guide_menu.js +0 -0
  325. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/overview/appflow.html +3 -3
  326. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/overview/at_a_glance.html +5 -15
  327. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/overview/cheatsheets.html +2 -2
  328. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/overview/features.html +3 -5
  329. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/overview/getting_started.html +2 -2
  330. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/overview/goals.html +2 -2
  331. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/overview/index.html +3 -3
  332. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/overview/mvc.html +2 -2
  333. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/toc.html +14 -15
  334. data/{generators/ci_app/templates/CodeIgniter_1.7.2 → lib/generators/ci/ci_app/templates/CodeIgniterLibs/CodeIgniter_2.0.0}/user_guide/userguide.css +9 -0
  335. data/{generators → lib/generators/ci}/ci_app/templates/README +0 -0
  336. data/lib/generators/ci/ci_auth/USAGE +8 -0
  337. data/lib/generators/ci/ci_auth/ci_auth_generator.rb +11 -0
  338. data/lib/generators/ci/ci_auth/templates/auth.php +133 -0
  339. data/lib/generators/ci/ci_auth/templates/auth_model.php +52 -0
  340. data/lib/generators/ci/ci_auth/templates/login_form.php +29 -0
  341. data/{generators → lib/generators/ci}/ci_controller/USAGE +0 -0
  342. data/{generators → lib/generators/ci}/ci_controller/ci_controller_generator.rb +0 -0
  343. data/{generators → lib/generators/ci}/ci_controller/templates/ci_controller.php.erb +0 -0
  344. data/{generators → lib/generators/ci}/ci_controller/templates/ci_view.php.erb +0 -0
  345. data/{generators → lib/generators/ci}/ci_layout/USAGE +0 -0
  346. data/{generators → lib/generators/ci}/ci_layout/ci_layout_generator.rb +0 -0
  347. data/{generators → lib/generators/ci}/ci_layout/templates/application_layout.php.erb +0 -0
  348. data/{generators → lib/generators/ci}/ci_model/USAGE +0 -0
  349. data/{generators → lib/generators/ci}/ci_model/ci_model_generator.rb +0 -0
  350. data/{generators → lib/generators/ci}/ci_model/templates/ci_model.php.erb +0 -0
  351. data/{generators → lib/generators/ci}/ci_model/templates/model.rb +0 -0
  352. data/{generators → lib/generators/ci}/ci_model/templates/model_migration.rb.erb +0 -0
  353. metadata +358 -347
  354. data/README +0 -40
  355. data/generators/ci_app/ci_app_generator.rb +0 -12
  356. data/generators/ci_app/templates/CodeIgniter_1.7.2/index.php +0 -118
  357. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/application/controllers/welcome.php +0 -17
  358. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/codeigniter/Base4.php +0 -69
  359. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/codeigniter/Base5.php +0 -56
  360. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/codeigniter/CodeIgniter.php +0 -280
  361. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/codeigniter/Common.php +0 -421
  362. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/codeigniter/Compat.php +0 -93
  363. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/fonts/texb.ttf +0 -0
  364. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/helpers/compatibility_helper.php +0 -498
  365. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/language/english/calendar_lang.php +0 -51
  366. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/language/english/scaffolding_lang.php +0 -17
  367. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/language/english/validation_lang.php +0 -24
  368. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries/Controller.php +0 -127
  369. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries/Input.php +0 -1067
  370. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries/Model.php +0 -83
  371. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries/Profiler.php +0 -392
  372. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/libraries/Validation.php +0 -875
  373. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/plugins/captcha_pi.php +0 -356
  374. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/plugins/js_calendar_pi.php +0 -629
  375. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/Scaffolding.php +0 -291
  376. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/images/background.jpg +0 -0
  377. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/images/logo.jpg +0 -0
  378. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/index.html +0 -10
  379. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/views/add.php +0 -32
  380. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/views/delete.php +0 -9
  381. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/views/edit.php +0 -33
  382. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/views/footer.php +0 -10
  383. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/views/header.php +0 -29
  384. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/views/index.html +0 -10
  385. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/views/no_data.php +0 -8
  386. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/views/stylesheet.css +0 -143
  387. data/generators/ci_app/templates/CodeIgniter_1.7.2/system/scaffolding/views/view.php +0 -27
  388. data/generators/ci_app/templates/CodeIgniter_1.7.2/user_guide/general/plugins.html +0 -127
  389. data/generators/ci_app/templates/CodeIgniter_1.7.2/user_guide/general/scaffolding.html +0 -147
  390. data/generators/ci_app/templates/CodeIgniter_1.7.2/user_guide/helpers/compatibility_helper.html +0 -118
  391. data/generators/ci_app/templates/CodeIgniter_1.7.2/user_guide/helpers/cookie_helper.html +0 -147
  392. data/generators/ci_app/templates/CodeIgniter_1.7.2/user_guide/libraries/validation.html +0 -740
  393. data/generators/ci_app/templates/CodeIgniter_1.7.2/user_guide/nav/moo.fx.pack.js +0 -241
@@ -2,11 +2,11 @@
2
2
  /**
3
3
  * CodeIgniter
4
4
  *
5
- * An open source application development framework for PHP 4.3.2 or newer
5
+ * An open source application development framework for PHP 5.1.6 or newer
6
6
  *
7
7
  * @package CodeIgniter
8
8
  * @author ExpressionEngine Dev Team
9
- * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc.
9
+ * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc.
10
10
  * @license http://codeigniter.com/user_guide/license.html
11
11
  * @link http://codeigniter.com
12
12
  * @since Version 1.0
@@ -31,16 +31,17 @@ class CI_Loader {
31
31
  // All these are set automatically. Don't mess with them.
32
32
  var $_ci_ob_level;
33
33
  var $_ci_view_path = '';
34
- var $_ci_is_php5 = FALSE;
35
- var $_ci_is_instance = FALSE; // Whether we should use $this or $CI =& get_instance()
34
+ var $_ci_library_paths = array();
35
+ var $_ci_model_paths = array();
36
+ var $_ci_helper_paths = array();
37
+ var $_base_classes = array(); // Set by the controller class
36
38
  var $_ci_cached_vars = array();
37
39
  var $_ci_classes = array();
38
40
  var $_ci_loaded_files = array();
39
41
  var $_ci_models = array();
40
42
  var $_ci_helpers = array();
41
- var $_ci_plugins = array();
42
43
  var $_ci_varmap = array('unit_test' => 'unit', 'user_agent' => 'agent');
43
-
44
+
44
45
 
45
46
  /**
46
47
  * Constructor
@@ -49,17 +50,19 @@ class CI_Loader {
49
50
  *
50
51
  * @access public
51
52
  */
52
- function CI_Loader()
53
- {
54
- $this->_ci_is_php5 = (floor(phpversion()) >= 5) ? TRUE : FALSE;
53
+ function __construct()
54
+ {
55
55
  $this->_ci_view_path = APPPATH.'views/';
56
56
  $this->_ci_ob_level = ob_get_level();
57
-
57
+ $this->_ci_library_paths = array(APPPATH, BASEPATH);
58
+ $this->_ci_helper_paths = array(APPPATH, BASEPATH);
59
+ $this->_ci_model_paths = array(APPPATH);
60
+
58
61
  log_message('debug', "Loader Class Initialized");
59
62
  }
60
-
63
+
61
64
  // --------------------------------------------------------------------
62
-
65
+
63
66
  /**
64
67
  * Class Loader
65
68
  *
@@ -71,15 +74,25 @@ class CI_Loader {
71
74
  * @param mixed the optional parameters
72
75
  * @param string an optional object name
73
76
  * @return void
74
- */
77
+ */
75
78
  function library($library = '', $params = NULL, $object_name = NULL)
76
79
  {
77
- if ($library == '')
80
+ if (is_array($library))
81
+ {
82
+ foreach($library as $read)
83
+ {
84
+ $this->library($read);
85
+ }
86
+
87
+ return;
88
+ }
89
+
90
+ if ($library == '' OR isset($this->_base_classes[$library]))
78
91
  {
79
92
  return FALSE;
80
93
  }
81
94
 
82
- if ( ! is_null($params) AND ! is_array($params))
95
+ if ( ! is_null($params) && ! is_array($params))
83
96
  {
84
97
  $params = NULL;
85
98
  }
@@ -95,12 +108,10 @@ class CI_Loader {
95
108
  {
96
109
  $this->_ci_load_class($library, $params, $object_name);
97
110
  }
98
-
99
- $this->_ci_assign_to_models();
100
111
  }
101
112
 
102
113
  // --------------------------------------------------------------------
103
-
114
+
104
115
  /**
105
116
  * Model Loader
106
117
  *
@@ -111,14 +122,14 @@ class CI_Loader {
111
122
  * @param string name for the model
112
123
  * @param bool database connection
113
124
  * @return void
114
- */
125
+ */
115
126
  function model($model, $name = '', $db_conn = FALSE)
116
- {
127
+ {
117
128
  if (is_array($model))
118
129
  {
119
130
  foreach($model as $babe)
120
131
  {
121
- $this->model($babe);
132
+ $this->model($babe);
122
133
  }
123
134
  return;
124
135
  }
@@ -127,68 +138,75 @@ class CI_Loader {
127
138
  {
128
139
  return;
129
140
  }
130
-
141
+
142
+ $path = '';
143
+
131
144
  // Is the model in a sub-folder? If so, parse out the filename and path.
132
- if (strpos($model, '/') === FALSE)
145
+ if (($last_slash = strrpos($model, '/')) !== FALSE)
133
146
  {
134
- $path = '';
135
- }
136
- else
137
- {
138
- $x = explode('/', $model);
139
- $model = end($x);
140
- unset($x[count($x)-1]);
141
- $path = implode('/', $x).'/';
147
+ // The path is in front of the last slash
148
+ $path = substr($model, 0, $last_slash + 1);
149
+
150
+ // And the model name behind it
151
+ $model = substr($model, $last_slash + 1);
142
152
  }
143
-
153
+
144
154
  if ($name == '')
145
155
  {
146
156
  $name = $model;
147
157
  }
148
-
158
+
149
159
  if (in_array($name, $this->_ci_models, TRUE))
150
160
  {
151
161
  return;
152
162
  }
153
-
163
+
154
164
  $CI =& get_instance();
155
165
  if (isset($CI->$name))
156
166
  {
157
167
  show_error('The model name you are loading is the name of a resource that is already being used: '.$name);
158
168
  }
159
-
169
+
160
170
  $model = strtolower($model);
161
-
162
- if ( ! file_exists(APPPATH.'models/'.$path.$model.EXT))
163
- {
164
- show_error('Unable to locate the model you have specified: '.$model);
165
- }
166
-
167
- if ($db_conn !== FALSE AND ! class_exists('CI_DB'))
168
- {
169
- if ($db_conn === TRUE)
170
- $db_conn = '';
171
-
172
- $CI->load->database($db_conn, FALSE, TRUE);
173
- }
174
-
175
- if ( ! class_exists('Model'))
171
+
172
+ foreach ($this->_ci_model_paths as $mod_path)
176
173
  {
177
- load_class('Model', FALSE);
178
- }
174
+ if ( ! file_exists($mod_path.'models/'.$path.$model.EXT))
175
+ {
176
+ continue;
177
+ }
179
178
 
180
- require_once(APPPATH.'models/'.$path.$model.EXT);
179
+ if ($db_conn !== FALSE AND ! class_exists('CI_DB'))
180
+ {
181
+ if ($db_conn === TRUE)
182
+ {
183
+ $db_conn = '';
184
+ }
185
+
186
+ $CI->load->database($db_conn, FALSE, TRUE);
187
+ }
188
+
189
+ if ( ! class_exists('CI_Model'))
190
+ {
191
+ load_class('Model', 'core');
192
+ }
193
+
194
+ require_once($mod_path.'models/'.$path.$model.EXT);
195
+
196
+ $model = ucfirst($model);
181
197
 
182
- $model = ucfirst($model);
183
-
184
- $CI->$name = new $model();
185
- $CI->$name->_assign_libraries();
186
-
187
- $this->_ci_models[] = $name;
198
+ $CI->$name = new $model();
199
+
200
+ $this->_ci_models[] = $name;
201
+ return;
202
+ }
203
+
204
+ // couldn't find the model
205
+ show_error('Unable to locate the model you have specified: '.$model);
188
206
  }
189
-
207
+
190
208
  // --------------------------------------------------------------------
191
-
209
+
192
210
  /**
193
211
  * Database Loader
194
212
  *
@@ -197,94 +215,87 @@ class CI_Loader {
197
215
  * @param bool whether to return the DB object
198
216
  * @param bool whether to enable active record (this allows us to override the config setting)
199
217
  * @return object
200
- */
201
- function database($params = '', $return = FALSE, $active_record = FALSE)
218
+ */
219
+ function database($params = '', $return = FALSE, $active_record = NULL)
202
220
  {
203
221
  // Grab the super object
204
222
  $CI =& get_instance();
205
-
223
+
206
224
  // Do we even need to load the database class?
207
- if (class_exists('CI_DB') AND $return == FALSE AND $active_record == FALSE AND isset($CI->db) AND is_object($CI->db))
225
+ if (class_exists('CI_DB') AND $return == FALSE AND $active_record == NULL AND isset($CI->db) AND is_object($CI->db))
208
226
  {
209
227
  return FALSE;
210
- }
211
-
228
+ }
229
+
212
230
  require_once(BASEPATH.'database/DB'.EXT);
213
231
 
214
232
  if ($return === TRUE)
215
233
  {
216
234
  return DB($params, $active_record);
217
235
  }
218
-
219
- // Initialize the db variable. Needed to prevent
236
+
237
+ // Initialize the db variable. Needed to prevent
220
238
  // reference errors with some configurations
221
239
  $CI->db = '';
222
-
240
+
223
241
  // Load the DB class
224
- $CI->db =& DB($params, $active_record);
225
-
226
- // Assign the DB object to any existing models
227
- $this->_ci_assign_to_models();
242
+ $CI->db =& DB($params, $active_record);
228
243
  }
229
-
244
+
230
245
  // --------------------------------------------------------------------
231
246
 
232
247
  /**
233
248
  * Load the Utilities Class
234
249
  *
235
250
  * @access public
236
- * @return string
237
- */
251
+ * @return string
252
+ */
238
253
  function dbutil()
239
254
  {
240
255
  if ( ! class_exists('CI_DB'))
241
256
  {
242
257
  $this->database();
243
258
  }
244
-
259
+
245
260
  $CI =& get_instance();
246
261
 
247
262
  // for backwards compatibility, load dbforge so we can extend dbutils off it
248
263
  // this use is deprecated and strongly discouraged
249
264
  $CI->load->dbforge();
250
-
265
+
251
266
  require_once(BASEPATH.'database/DB_utility'.EXT);
252
267
  require_once(BASEPATH.'database/drivers/'.$CI->db->dbdriver.'/'.$CI->db->dbdriver.'_utility'.EXT);
253
268
  $class = 'CI_DB_'.$CI->db->dbdriver.'_utility';
254
269
 
255
- $CI->dbutil =& instantiate_class(new $class());
256
-
257
- $CI->load->_ci_assign_to_models();
270
+ $CI->dbutil = new $class();
258
271
  }
259
-
272
+
260
273
  // --------------------------------------------------------------------
261
274
 
262
275
  /**
263
276
  * Load the Database Forge Class
264
277
  *
265
278
  * @access public
266
- * @return string
267
- */
279
+ * @return string
280
+ */
268
281
  function dbforge()
269
282
  {
270
283
  if ( ! class_exists('CI_DB'))
271
284
  {
272
285
  $this->database();
273
286
  }
274
-
287
+
275
288
  $CI =& get_instance();
276
-
289
+
277
290
  require_once(BASEPATH.'database/DB_forge'.EXT);
278
291
  require_once(BASEPATH.'database/drivers/'.$CI->db->dbdriver.'/'.$CI->db->dbdriver.'_forge'.EXT);
279
292
  $class = 'CI_DB_'.$CI->db->dbdriver.'_forge';
280
293
 
281
294
  $CI->dbforge = new $class();
282
-
283
- $CI->load->_ci_assign_to_models();
284
295
  }
285
-
296
+
286
297
  // --------------------------------------------------------------------
287
-
298
+
288
299
  /**
289
300
  * Load View
290
301
  *
@@ -306,9 +317,9 @@ class CI_Loader {
306
317
  {
307
318
  return $this->_ci_load(array('_ci_view' => $view, '_ci_vars' => $this->_ci_object_to_array($vars), '_ci_return' => $return));
308
319
  }
309
-
320
+
310
321
  // --------------------------------------------------------------------
311
-
322
+
312
323
  /**
313
324
  * Load File
314
325
  *
@@ -323,9 +334,9 @@ class CI_Loader {
323
334
  {
324
335
  return $this->_ci_load(array('_ci_path' => $path, '_ci_return' => $return));
325
336
  }
326
-
337
+
327
338
  // --------------------------------------------------------------------
328
-
339
+
329
340
  /**
330
341
  * Set Variables
331
342
  *
@@ -342,9 +353,9 @@ class CI_Loader {
342
353
  {
343
354
  $vars = array($vars => $val);
344
355
  }
345
-
356
+
346
357
  $vars = $this->_ci_object_to_array($vars);
347
-
358
+
348
359
  if (is_array($vars) AND count($vars) > 0)
349
360
  {
350
361
  foreach ($vars as $key => $val)
@@ -353,9 +364,9 @@ class CI_Loader {
353
364
  }
354
365
  }
355
366
  }
356
-
367
+
357
368
  // --------------------------------------------------------------------
358
-
369
+
359
370
  /**
360
371
  * Load Helper
361
372
  *
@@ -367,58 +378,56 @@ class CI_Loader {
367
378
  */
368
379
  function helper($helpers = array())
369
380
  {
370
- if ( ! is_array($helpers))
381
+ foreach ($this->_ci_prep_filename($helpers, '_helper') as $helper)
371
382
  {
372
- $helpers = array($helpers);
373
- }
374
-
375
- foreach ($helpers as $helper)
376
- {
377
- $helper = strtolower(str_replace(EXT, '', str_replace('_helper', '', $helper)).'_helper');
378
-
379
383
  if (isset($this->_ci_helpers[$helper]))
380
384
  {
381
385
  continue;
382
386
  }
383
-
387
+
384
388
  $ext_helper = APPPATH.'helpers/'.config_item('subclass_prefix').$helper.EXT;
385
389
 
386
- // Is this a helper extension request?
390
+ // Is this a helper extension request?
387
391
  if (file_exists($ext_helper))
388
392
  {
389
393
  $base_helper = BASEPATH.'helpers/'.$helper.EXT;
390
-
394
+
391
395
  if ( ! file_exists($base_helper))
392
396
  {
393
397
  show_error('Unable to load the requested file: helpers/'.$helper.EXT);
394
398
  }
395
-
399
+
396
400
  include_once($ext_helper);
397
401
  include_once($base_helper);
402
+
403
+ $this->_ci_helpers[$helper] = TRUE;
404
+ log_message('debug', 'Helper loaded: '.$helper);
405
+ continue;
398
406
  }
399
- elseif (file_exists(APPPATH.'helpers/'.$helper.EXT))
400
- {
401
- include_once(APPPATH.'helpers/'.$helper.EXT);
402
- }
403
- else
404
- {
405
- if (file_exists(BASEPATH.'helpers/'.$helper.EXT))
406
- {
407
- include_once(BASEPATH.'helpers/'.$helper.EXT);
408
- }
409
- else
407
+
408
+ // Try to load the helper
409
+ foreach ($this->_ci_helper_paths as $path)
410
+ {
411
+ if (file_exists($path.'helpers/'.$helper.EXT))
410
412
  {
411
- show_error('Unable to load the requested file: helpers/'.$helper.EXT);
413
+ include_once($path.'helpers/'.$helper.EXT);
414
+
415
+ $this->_ci_helpers[$helper] = TRUE;
416
+ log_message('debug', 'Helper loaded: '.$helper);
417
+ break;
412
418
  }
413
419
  }
414
420
 
415
- $this->_ci_helpers[$helper] = TRUE;
416
- log_message('debug', 'Helper loaded: '.$helper);
417
- }
421
+ // unable to load the helper
422
+ if ( ! isset($this->_ci_helpers[$helper]))
423
+ {
424
+ show_error('Unable to load the requested file: helpers/'.$helper.EXT);
425
+ }
426
+ }
418
427
  }
419
-
428
+
420
429
  // --------------------------------------------------------------------
421
-
430
+
422
431
  /**
423
432
  * Load Helpers
424
433
  *
@@ -433,156 +442,167 @@ class CI_Loader {
433
442
  {
434
443
  $this->helper($helpers);
435
444
  }
436
-
445
+
437
446
  // --------------------------------------------------------------------
438
-
447
+
439
448
  /**
440
- * Load Plugin
441
- *
442
- * This function loads the specified plugin.
449
+ * Loads a language file
443
450
  *
444
451
  * @access public
445
452
  * @param array
453
+ * @param string
446
454
  * @return void
447
455
  */
448
- function plugin($plugins = array())
456
+ function language($file = array(), $lang = '')
449
457
  {
450
- if ( ! is_array($plugins))
458
+ $CI =& get_instance();
459
+
460
+ if ( ! is_array($file))
451
461
  {
452
- $plugins = array($plugins);
462
+ $file = array($file);
453
463
  }
454
-
455
- foreach ($plugins as $plugin)
456
- {
457
- $plugin = strtolower(str_replace(EXT, '', str_replace('_pi', '', $plugin)).'_pi');
458
464
 
459
- if (isset($this->_ci_plugins[$plugin]))
460
- {
461
- continue;
462
- }
463
-
464
- if (file_exists(APPPATH.'plugins/'.$plugin.EXT))
465
- {
466
- include_once(APPPATH.'plugins/'.$plugin.EXT);
467
- }
468
- else
469
- {
470
- if (file_exists(BASEPATH.'plugins/'.$plugin.EXT))
471
- {
472
- include_once(BASEPATH.'plugins/'.$plugin.EXT);
473
- }
474
- else
475
- {
476
- show_error('Unable to load the requested file: plugins/'.$plugin.EXT);
477
- }
478
- }
479
-
480
- $this->_ci_plugins[$plugin] = TRUE;
481
- log_message('debug', 'Plugin loaded: '.$plugin);
482
- }
465
+ foreach ($file as $langfile)
466
+ {
467
+ $CI->lang->load($langfile, $lang);
468
+ }
483
469
  }
484
470
 
485
471
  // --------------------------------------------------------------------
486
-
472
+
487
473
  /**
488
- * Load Plugins
489
- *
490
- * This is simply an alias to the above function in case the
491
- * user has written the plural form of this function.
474
+ * Loads a config file
492
475
  *
493
476
  * @access public
494
- * @param array
477
+ * @param string
495
478
  * @return void
496
479
  */
497
- function plugins($plugins = array())
480
+ function config($file = '', $use_sections = FALSE, $fail_gracefully = FALSE)
498
481
  {
499
- $this->plugin($plugins);
482
+ $CI =& get_instance();
483
+ $CI->config->load($file, $use_sections, $fail_gracefully);
500
484
  }
501
-
485
+
502
486
  // --------------------------------------------------------------------
503
-
487
+
504
488
  /**
505
- * Loads a language file
489
+ * Driver
506
490
  *
507
- * @access public
508
- * @param array
509
- * @param string
491
+ * Loads a driver library
492
+ *
493
+ * @param string the name of the class
494
+ * @param mixed the optional parameters
495
+ * @param string an optional object name
510
496
  * @return void
511
497
  */
512
- function language($file = array(), $lang = '')
498
+ function driver($library = '', $params = NULL, $object_name = NULL)
513
499
  {
514
- $CI =& get_instance();
515
-
516
- if ( ! is_array($file))
500
+ if ( ! class_exists('CI_Driver_Library'))
517
501
  {
518
- $file = array($file);
502
+ // we aren't instantiating an object here, that'll be done by the Library itself
503
+ require BASEPATH.'libraries/Driver'.EXT;
519
504
  }
520
505
 
521
- foreach ($file as $langfile)
522
- {
523
- $CI->lang->load($langfile, $lang);
506
+ // We can save the loader some time since Drivers will *always* be in a subfolder,
507
+ // and typically identically named to the library
508
+ if ( ! strpos($library, '/'))
509
+ {
510
+ $library = ucfirst($library).'/'.$library;
524
511
  }
512
+
513
+ return $this->library($library, $params, $object_name);
525
514
  }
526
515
 
516
+ // --------------------------------------------------------------------
517
+
527
518
  /**
528
- * Loads language files for scaffolding
519
+ * Add Package Path
520
+ *
521
+ * Prepends a parent path to the library, model, helper, and config path arrays
529
522
  *
530
523
  * @access public
531
524
  * @param string
532
- * @return arra
525
+ * @return void
533
526
  */
534
- function scaffold_language($file = '', $lang = '', $return = FALSE)
527
+ function add_package_path($path)
535
528
  {
536
- $CI =& get_instance();
537
- return $CI->lang->load($file, $lang, $return);
529
+ $path = rtrim($path, '/').'/';
530
+
531
+ array_unshift($this->_ci_library_paths, $path);
532
+ array_unshift($this->_ci_model_paths, $path);
533
+ array_unshift($this->_ci_helper_paths, $path);
534
+
535
+ // Add config file path
536
+ $config =& $this->_ci_get_component('config');
537
+ array_unshift($config->_config_paths, $path);
538
538
  }
539
-
539
+
540
540
  // --------------------------------------------------------------------
541
-
541
+
542
542
  /**
543
- * Loads a config file
543
+ * Get Package Paths
544
+ *
545
+ * Return a list of all package paths, by default it will ignore BASEPATH.
544
546
  *
545
547
  * @access public
546
548
  * @param string
547
549
  * @return void
548
550
  */
549
- function config($file = '', $use_sections = FALSE, $fail_gracefully = FALSE)
550
- {
551
- $CI =& get_instance();
552
- $CI->config->load($file, $use_sections, $fail_gracefully);
551
+ function get_package_paths($include_base = FALSE)
552
+ {
553
+ return $include_base === TRUE ? $this->_ci_library_paths : $this->_ci_model_paths;
553
554
  }
554
555
 
555
556
  // --------------------------------------------------------------------
556
-
557
+
557
558
  /**
558
- * Scaffolding Loader
559
+ * Remove Package Path
559
560
  *
560
- * This initializing function works a bit different than the
561
- * others. It doesn't load the class. Instead, it simply
562
- * sets a flag indicating that scaffolding is allowed to be
563
- * used. The actual scaffolding function below is
564
- * called by the front controller based on whether the
565
- * second segment of the URL matches the "secret" scaffolding
566
- * word stored in the application/config/routes.php
561
+ * Remove a path from the library, model, and helper path arrays if it exists
562
+ * If no path is provided, the most recently added path is removed.
567
563
  *
568
564
  * @access public
569
- * @param string
570
- * @return void
571
- */
572
- function scaffolding($table = '')
573
- {
574
- if ($table === FALSE)
565
+ * @param type
566
+ * @return type
567
+ */
568
+ function remove_package_path($path = '', $remove_config_path = TRUE)
569
+ {
570
+ $config =& $this->_ci_get_component('config');
571
+
572
+ if ($path == '')
575
573
  {
576
- show_error('You must include the name of the table you would like to access when you initialize scaffolding');
574
+ $void = array_shift($this->_ci_library_paths);
575
+ $void = array_shift($this->_ci_model_paths);
576
+ $void = array_shift($this->_ci_helper_paths);
577
+ $void = array_shift($config->_config_paths);
577
578
  }
578
-
579
- $CI =& get_instance();
580
- $CI->_ci_scaffolding = TRUE;
581
- $CI->_ci_scaff_table = $table;
579
+ else
580
+ {
581
+ $path = rtrim($path, '/').'/';
582
+
583
+ foreach (array('_ci_library_paths', '_ci_model_paths', '_ci_helper_paths') as $var)
584
+ {
585
+ if (($key = array_search($path, $this->{$var})) !== FALSE)
586
+ {
587
+ unset($this->{$var}[$key]);
588
+ }
589
+ }
590
+
591
+ if (($key = array_search($path, $config->_config_paths)) !== FALSE)
592
+ {
593
+ unset($config->_config_paths[$key]);
594
+ }
595
+ }
596
+
597
+ // make sure the application default paths are still in the array
598
+ $this->_ci_library_paths = array_unique(array_merge($this->_ci_library_paths, array(APPPATH, BASEPATH)));
599
+ $this->_ci_helper_paths = array_unique(array_merge($this->_ci_helper_paths, array(APPPATH, BASEPATH)));
600
+ $this->_ci_model_paths = array_unique(array_merge($this->_ci_model_paths, array(APPPATH)));
601
+ $config->_config_paths = array_unique(array_merge($config->_config_paths, array(APPPATH)));
582
602
  }
583
603
 
584
604
  // --------------------------------------------------------------------
585
-
605
+
586
606
  /**
587
607
  * Loader
588
608
  *
@@ -614,25 +634,21 @@ class CI_Loader {
614
634
  $_ci_x = explode('/', $_ci_path);
615
635
  $_ci_file = end($_ci_x);
616
636
  }
617
-
637
+
618
638
  if ( ! file_exists($_ci_path))
619
639
  {
620
640
  show_error('Unable to load the requested file: '.$_ci_file);
621
641
  }
622
-
642
+
623
643
  // This allows anything loaded using $this->load (views, files, etc.)
624
644
  // to become accessible from within the Controller and Model functions.
625
- // Only needed when running PHP 5
626
-
627
- if ($this->_ci_is_instance())
645
+
646
+ $_ci_CI =& get_instance();
647
+ foreach (get_object_vars($_ci_CI) as $_ci_key => $_ci_var)
628
648
  {
629
- $_ci_CI =& get_instance();
630
- foreach (get_object_vars($_ci_CI) as $_ci_key => $_ci_var)
649
+ if ( ! isset($this->$_ci_key))
631
650
  {
632
- if ( ! isset($this->$_ci_key))
633
- {
634
- $this->$_ci_key =& $_ci_CI->$_ci_key;
635
- }
651
+ $this->$_ci_key =& $_ci_CI->$_ci_key;
636
652
  }
637
653
  }
638
654
 
@@ -643,13 +659,13 @@ class CI_Loader {
643
659
  * function or via the second parameter of this function. We'll merge
644
660
  * the two types and cache them so that views that are embedded within
645
661
  * other views can have access to these variables.
646
- */
662
+ */
647
663
  if (is_array($_ci_vars))
648
664
  {
649
665
  $this->_ci_cached_vars = array_merge($this->_ci_cached_vars, $_ci_vars);
650
666
  }
651
667
  extract($this->_ci_cached_vars);
652
-
668
+
653
669
  /*
654
670
  * Buffer the output
655
671
  *
@@ -663,11 +679,11 @@ class CI_Loader {
663
679
  * the browser and then stop the timer it won't be accurate.
664
680
  */
665
681
  ob_start();
666
-
682
+
667
683
  // If the PHP installation does not support short tags we'll
668
684
  // do a little string replacement, changing the short tags
669
685
  // to standard PHP echo statements.
670
-
686
+
671
687
  if ((bool) @ini_get('short_open_tag') === FALSE AND config_item('rewrite_short_tags') == TRUE)
672
688
  {
673
689
  echo eval('?>'.preg_replace("/;*\s*\?>/", "; ?>", str_replace('<?=', '<?php echo ', file_get_contents($_ci_path))));
@@ -676,12 +692,12 @@ class CI_Loader {
676
692
  {
677
693
  include($_ci_path); // include() vs include_once() allows for multiple views with the same name
678
694
  }
679
-
695
+
680
696
  log_message('debug', 'File loaded: '.$_ci_path);
681
-
697
+
682
698
  // Return the file data if requested
683
699
  if ($_ci_return === TRUE)
684
- {
700
+ {
685
701
  $buffer = ob_get_contents();
686
702
  @ob_end_clean();
687
703
  return $buffer;
@@ -696,16 +712,14 @@ class CI_Loader {
696
712
  * it can be seen and included properly by the first included
697
713
  * template and any subsequent ones. Oy!
698
714
  *
699
- */
715
+ */
700
716
  if (ob_get_level() > $this->_ci_ob_level + 1)
701
717
  {
702
718
  ob_end_flush();
703
719
  }
704
720
  else
705
721
  {
706
- // PHP 4 requires that we use a global
707
- global $OUT;
708
- $OUT->append_output(ob_get_contents());
722
+ $_ci_CI->output->append_output(ob_get_contents());
709
723
  @ob_end_clean();
710
724
  }
711
725
  }
@@ -718,34 +732,28 @@ class CI_Loader {
718
732
  * This function loads the requested class.
719
733
  *
720
734
  * @access private
721
- * @param string the item that is being loaded
735
+ * @param string the item that is being loaded
722
736
  * @param mixed any additional parameters
723
737
  * @param string an optional object name
724
- * @return void
738
+ * @return void
725
739
  */
726
740
  function _ci_load_class($class, $params = NULL, $object_name = NULL)
727
- {
728
- // Get the class name, and while we're at it trim any slashes.
729
- // The directory path can be included as part of the class name,
741
+ {
742
+ // Get the class name, and while we're at it trim any slashes.
743
+ // The directory path can be included as part of the class name,
730
744
  // but we don't want a leading slash
731
745
  $class = str_replace(EXT, '', trim($class, '/'));
732
-
746
+
733
747
  // Was the path included with the class name?
734
748
  // We look for a slash to determine this
735
749
  $subdir = '';
736
- if (strpos($class, '/') !== FALSE)
750
+ if (($last_slash = strrpos($class, '/')) !== FALSE)
737
751
  {
738
- // explode the path so we can separate the filename from the path
739
- $x = explode('/', $class);
740
-
741
- // Reset the $class variable now that we know the actual filename
742
- $class = end($x);
743
-
744
- // Kill the filename from the array
745
- unset($x[count($x)-1]);
746
-
747
- // Glue the path back together, sans filename
748
- $subdir = implode($x, '/').'/';
752
+ // Extract the path
753
+ $subdir = substr($class, 0, $last_slash + 1);
754
+
755
+ // Get the filename from the path
756
+ $class = substr($class, $last_slash + 1);
749
757
  }
750
758
 
751
759
  // We'll test for both lowercase and capitalized versions of the file name
@@ -753,11 +761,11 @@ class CI_Loader {
753
761
  {
754
762
  $subclass = APPPATH.'libraries/'.$subdir.config_item('subclass_prefix').$class.EXT;
755
763
 
756
- // Is this a class extension request?
764
+ // Is this a class extension request?
757
765
  if (file_exists($subclass))
758
766
  {
759
767
  $baseclass = BASEPATH.'libraries/'.ucfirst($class).EXT;
760
-
768
+
761
769
  if ( ! file_exists($baseclass))
762
770
  {
763
771
  log_message('error', "Unable to load the requested class: ".$class);
@@ -775,35 +783,34 @@ class CI_Loader {
775
783
  $CI =& get_instance();
776
784
  if ( ! isset($CI->$object_name))
777
785
  {
778
- return $this->_ci_init_class($class, config_item('subclass_prefix'), $params, $object_name);
786
+ return $this->_ci_init_class($class, config_item('subclass_prefix'), $params, $object_name);
779
787
  }
780
788
  }
781
-
789
+
782
790
  $is_duplicate = TRUE;
783
791
  log_message('debug', $class." class already loaded. Second attempt ignored.");
784
792
  return;
785
793
  }
786
-
787
- include_once($baseclass);
794
+
795
+ include_once($baseclass);
788
796
  include_once($subclass);
789
797
  $this->_ci_loaded_files[] = $subclass;
790
-
791
- return $this->_ci_init_class($class, config_item('subclass_prefix'), $params, $object_name);
798
+
799
+ return $this->_ci_init_class($class, config_item('subclass_prefix'), $params, $object_name);
792
800
  }
793
-
801
+
794
802
  // Lets search for the requested library file and load it.
795
- $is_duplicate = FALSE;
796
- for ($i = 1; $i < 3; $i++)
803
+ $is_duplicate = FALSE;
804
+ foreach ($this->_ci_library_paths as $path)
797
805
  {
798
- $path = ($i % 2) ? APPPATH : BASEPATH;
799
806
  $filepath = $path.'libraries/'.$subdir.$class.EXT;
800
-
807
+
801
808
  // Does the file exist? No? Bummer...
802
809
  if ( ! file_exists($filepath))
803
810
  {
804
811
  continue;
805
812
  }
806
-
813
+
807
814
  // Safety: Was the class already loaded by a previous call?
808
815
  if (in_array($filepath, $this->_ci_loaded_files))
809
816
  {
@@ -818,16 +825,17 @@ class CI_Loader {
818
825
  return $this->_ci_init_class($class, '', $params, $object_name);
819
826
  }
820
827
  }
821
-
828
+
822
829
  $is_duplicate = TRUE;
823
830
  log_message('debug', $class." class already loaded. Second attempt ignored.");
824
831
  return;
825
832
  }
826
-
833
+
827
834
  include_once($filepath);
828
835
  $this->_ci_loaded_files[] = $filepath;
829
836
  return $this->_ci_init_class($class, '', $params, $object_name);
830
837
  }
838
+
831
839
  } // END FOREACH
832
840
 
833
841
  // One last attempt. Maybe the library is in a subdirectory, but it wasn't specified?
@@ -836,7 +844,7 @@ class CI_Loader {
836
844
  $path = strtolower($class).'/'.$class;
837
845
  return $this->_ci_load_class($path, $params);
838
846
  }
839
-
847
+
840
848
  // If we got this far we were unable to find the requested class.
841
849
  // We do not issue errors if the load call failed due to a duplicate request
842
850
  if ($is_duplicate == FALSE)
@@ -845,7 +853,7 @@ class CI_Loader {
845
853
  show_error("Unable to load the requested class: ".$class);
846
854
  }
847
855
  }
848
-
856
+
849
857
  // --------------------------------------------------------------------
850
858
 
851
859
  /**
@@ -858,29 +866,42 @@ class CI_Loader {
858
866
  * @return null
859
867
  */
860
868
  function _ci_init_class($class, $prefix = '', $config = FALSE, $object_name = NULL)
861
- {
862
- // Is there an associated config file for this class?
869
+ {
870
+ // Is there an associated config file for this class? Note: these should always be lowercase
863
871
  if ($config === NULL)
864
872
  {
865
- // We test for both uppercase and lowercase, for servers that
866
- // are case-sensitive with regard to file names
867
- if (file_exists(APPPATH.'config/'.strtolower($class).EXT))
868
- {
869
- include_once(APPPATH.'config/'.strtolower($class).EXT);
870
- }
871
- elseif (file_exists(APPPATH.'config/'.ucfirst(strtolower($class)).EXT))
873
+ // Fetch the config paths containing any package paths
874
+ $config_component = $this->_ci_get_component('config');
875
+
876
+ if (is_array($config_component->_config_paths))
872
877
  {
873
- include_once(APPPATH.'config/'.ucfirst(strtolower($class)).EXT);
878
+ // Break on the first found file, thus package files
879
+ // are not overridden by default paths
880
+ foreach ($config_component->_config_paths as $path)
881
+ {
882
+ // We test for both uppercase and lowercase, for servers that
883
+ // are case-sensitive with regard to file names
884
+ if (file_exists($path .'config/'.strtolower($class).EXT))
885
+ {
886
+ include_once($path .'config/'.strtolower($class).EXT);
887
+ break;
888
+ }
889
+ elseif (file_exists($path .'config/'.ucfirst(strtolower($class)).EXT))
890
+ {
891
+ include_once($path .'config/'.ucfirst(strtolower($class)).EXT);
892
+ break;
893
+ }
894
+ }
874
895
  }
875
896
  }
876
-
897
+
877
898
  if ($prefix == '')
878
- {
879
- if (class_exists('CI_'.$class))
899
+ {
900
+ if (class_exists('CI_'.$class))
880
901
  {
881
902
  $name = 'CI_'.$class;
882
903
  }
883
- elseif (class_exists(config_item('subclass_prefix').$class))
904
+ elseif (class_exists(config_item('subclass_prefix').$class))
884
905
  {
885
906
  $name = config_item('subclass_prefix').$class;
886
907
  }
@@ -893,18 +914,18 @@ class CI_Loader {
893
914
  {
894
915
  $name = $prefix.$class;
895
916
  }
896
-
917
+
897
918
  // Is the class name valid?
898
919
  if ( ! class_exists($name))
899
920
  {
900
921
  log_message('error', "Non-existent class: ".$name);
901
922
  show_error("Non-existent class: ".$class);
902
923
  }
903
-
924
+
904
925
  // Set the variable name we will assign the class to
905
926
  // Was a custom class name supplied? If so we'll use it
906
927
  $class = strtolower($class);
907
-
928
+
908
929
  if (is_null($object_name))
909
930
  {
910
931
  $classvar = ( ! isset($this->_ci_varmap[$class])) ? $class : $this->_ci_varmap[$class];
@@ -914,68 +935,77 @@ class CI_Loader {
914
935
  $classvar = $object_name;
915
936
  }
916
937
 
917
- // Save the class name and object name
938
+ // Save the class name and object name
918
939
  $this->_ci_classes[$class] = $classvar;
919
940
 
920
- // Instantiate the class
941
+ // Instantiate the class
921
942
  $CI =& get_instance();
922
943
  if ($config !== NULL)
923
944
  {
924
945
  $CI->$classvar = new $name($config);
925
946
  }
926
947
  else
927
- {
948
+ {
928
949
  $CI->$classvar = new $name;
929
- }
930
- }
931
-
950
+ }
951
+ }
952
+
932
953
  // --------------------------------------------------------------------
933
-
954
+
934
955
  /**
935
956
  * Autoloader
936
957
  *
937
958
  * The config/autoload.php file contains an array that permits sub-systems,
938
- * libraries, plugins, and helpers to be loaded automatically.
959
+ * libraries, and helpers to be loaded automatically.
939
960
  *
940
961
  * @access private
941
962
  * @param array
942
963
  * @return void
943
964
  */
944
965
  function _ci_autoloader()
945
- {
966
+ {
946
967
  include_once(APPPATH.'config/autoload'.EXT);
947
-
968
+
948
969
  if ( ! isset($autoload))
949
970
  {
950
971
  return FALSE;
951
972
  }
952
-
973
+
974
+ // Autoload packages
975
+ if (isset($autoload['packages']))
976
+ {
977
+ foreach ($autoload['packages'] as $package_path)
978
+ {
979
+ $this->add_package_path($package_path);
980
+ }
981
+ }
982
+
953
983
  // Load any custom config file
954
984
  if (count($autoload['config']) > 0)
955
- {
985
+ {
956
986
  $CI =& get_instance();
957
987
  foreach ($autoload['config'] as $key => $val)
958
988
  {
959
989
  $CI->config->load($val);
960
990
  }
961
- }
991
+ }
962
992
 
963
- // Autoload plugins, helpers and languages
964
- foreach (array('helper', 'plugin', 'language') as $type)
965
- {
993
+ // Autoload helpers and languages
994
+ foreach (array('helper', 'language') as $type)
995
+ {
966
996
  if (isset($autoload[$type]) AND count($autoload[$type]) > 0)
967
997
  {
968
998
  $this->$type($autoload[$type]);
969
- }
999
+ }
970
1000
  }
971
1001
 
972
1002
  // A little tweak to remain backward compatible
973
1003
  // The $autoload['core'] item was deprecated
974
- if ( ! isset($autoload['libraries']))
1004
+ if ( ! isset($autoload['libraries']) AND isset($autoload['core']))
975
1005
  {
976
1006
  $autoload['libraries'] = $autoload['core'];
977
1007
  }
978
-
1008
+
979
1009
  // Load libraries
980
1010
  if (isset($autoload['libraries']) AND count($autoload['libraries']) > 0)
981
1011
  {
@@ -986,100 +1016,80 @@ class CI_Loader {
986
1016
  $autoload['libraries'] = array_diff($autoload['libraries'], array('database'));
987
1017
  }
988
1018
 
989
- // Load scaffolding
990
- if (in_array('scaffolding', $autoload['libraries']))
991
- {
992
- $this->scaffolding();
993
- $autoload['libraries'] = array_diff($autoload['libraries'], array('scaffolding'));
994
- }
995
-
996
1019
  // Load all other libraries
997
1020
  foreach ($autoload['libraries'] as $item)
998
1021
  {
999
1022
  $this->library($item);
1000
1023
  }
1001
- }
1024
+ }
1002
1025
 
1003
1026
  // Autoload models
1004
1027
  if (isset($autoload['model']))
1005
1028
  {
1006
1029
  $this->model($autoload['model']);
1007
1030
  }
1008
-
1009
1031
  }
1010
-
1032
+
1011
1033
  // --------------------------------------------------------------------
1012
1034
 
1013
1035
  /**
1014
- * Assign to Models
1036
+ * Object to Array
1015
1037
  *
1016
- * Makes sure that anything loaded by the loader class (libraries, plugins, etc.)
1017
- * will be available to models, if any exist.
1038
+ * Takes an object as input and converts the class variables to array key/vals
1018
1039
  *
1019
1040
  * @access private
1020
1041
  * @param object
1021
1042
  * @return array
1022
1043
  */
1023
- function _ci_assign_to_models()
1044
+ function _ci_object_to_array($object)
1024
1045
  {
1025
- if (count($this->_ci_models) == 0)
1026
- {
1027
- return;
1028
- }
1029
-
1030
- if ($this->_ci_is_instance())
1031
- {
1032
- $CI =& get_instance();
1033
- foreach ($this->_ci_models as $model)
1034
- {
1035
- $CI->$model->_assign_libraries();
1036
- }
1037
- }
1038
- else
1039
- {
1040
- foreach ($this->_ci_models as $model)
1041
- {
1042
- $this->$model->_assign_libraries();
1043
- }
1044
- }
1045
- }
1046
+ return (is_object($object)) ? get_object_vars($object) : $object;
1047
+ }
1046
1048
 
1047
1049
  // --------------------------------------------------------------------
1048
1050
 
1049
1051
  /**
1050
- * Object to Array
1051
- *
1052
- * Takes an object as input and converts the class variables to array key/vals
1052
+ * Get a reference to a specific library or model
1053
1053
  *
1054
1054
  * @access private
1055
- * @param object
1056
- * @return array
1055
+ * @return bool
1057
1056
  */
1058
- function _ci_object_to_array($object)
1057
+ function &_ci_get_component($component)
1059
1058
  {
1060
- return (is_object($object)) ? get_object_vars($object) : $object;
1059
+ $CI =& get_instance();
1060
+ return $CI->$component;
1061
1061
  }
1062
1062
 
1063
1063
  // --------------------------------------------------------------------
1064
1064
 
1065
1065
  /**
1066
- * Determines whether we should use the CI instance or $this
1066
+ * Prep filename
1067
+ *
1068
+ * This function preps the name of various items to make loading them more reliable.
1067
1069
  *
1068
1070
  * @access private
1069
- * @return bool
1071
+ * @param mixed
1072
+ * @return array
1070
1073
  */
1071
- function _ci_is_instance()
1074
+ function _ci_prep_filename($filename, $extension)
1072
1075
  {
1073
- if ($this->_ci_is_php5 == TRUE)
1076
+ if ( ! is_array($filename))
1074
1077
  {
1075
- return TRUE;
1078
+ return array(strtolower(str_replace(EXT, '', str_replace($extension, '', $filename)).$extension));
1079
+ }
1080
+ else
1081
+ {
1082
+ foreach ($filename as $key => $val)
1083
+ {
1084
+ $filename[$key] = strtolower(str_replace(EXT, '', str_replace($extension, '', $val)).$extension);
1085
+ }
1086
+
1087
+ return $filename;
1076
1088
  }
1077
-
1078
- global $CI;
1079
- return (is_object($CI)) ? TRUE : FALSE;
1080
1089
  }
1081
1090
 
1091
+
1082
1092
  }
1083
1093
 
1084
1094
  /* End of file Loader.php */
1085
- /* Location: ./system/libraries/Loader.php */
1095
+ /* Location: ./system/core/Loader.php */