/app/propel/migrations/PropelMigration_1455515810.php

https://gitlab.com/Isaki/le331.fr · PHP · 400 lines · 371 code · 8 blank · 21 comment · 0 complexity · 6675016db15d6f8217ffdb683da99c4e MD5 · raw file

  1. <?php
  2. /**
  3. * Data object containing the SQL and PHP code to migrate the database
  4. * up to version 1455515810.
  5. * Generated on 2016-02-15 06:56:50 by Romain
  6. */
  7. class PropelMigration_1455515810
  8. {
  9. public function preUp($manager)
  10. {
  11. // add the pre-migration code here
  12. }
  13. public function postUp($manager)
  14. {
  15. // add the post-migration code here
  16. }
  17. public function preDown($manager)
  18. {
  19. // add the pre-migration code here
  20. }
  21. public function postDown($manager)
  22. {
  23. // add the post-migration code here
  24. }
  25. /**
  26. * Get the SQL statements for the Up migration
  27. *
  28. * @return array list of the SQL strings to execute for the Up migration
  29. * the keys being the datasources
  30. */
  31. public function getUpSQL()
  32. {
  33. return array (
  34. 'default' => '
  35. # This is a fix for InnoDB in MySQL >= 4.1.x
  36. # It "suspends judgement" for fkey relationships until are tables are set.
  37. SET FOREIGN_KEY_CHECKS = 0;
  38. CREATE TABLE `config`
  39. (
  40. `id` INTEGER NOT NULL AUTO_INCREMENT,
  41. `internship_begining` DATE,
  42. `internship_ending` DATE,
  43. PRIMARY KEY (`id`)
  44. ) ENGINE=MyISAM;
  45. CREATE TABLE `user`
  46. (
  47. `id` INTEGER NOT NULL AUTO_INCREMENT,
  48. `city_id` INTEGER NOT NULL,
  49. `profile_id` INTEGER NOT NULL,
  50. `promo_id` INTEGER NOT NULL,
  51. `email` VARCHAR(64),
  52. `password` VARCHAR(128),
  53. `lastname` VARCHAR(32),
  54. `firstname` VARCHAR(32),
  55. `description` VARCHAR(140),
  56. `newsletter` TINYINT(1),
  57. `birthday` DATE,
  58. `url_portfolio` VARCHAR(64),
  59. `url_linkedin` VARCHAR(64),
  60. `url_facebook` VARCHAR(64),
  61. `url_google` VARCHAR(64),
  62. `url_twitter` VARCHAR(64),
  63. `url_tumblr` VARCHAR(64),
  64. `url_instagram` VARCHAR(64),
  65. `url_blog` VARCHAR(64),
  66. `cv_file` VARCHAR(64),
  67. `image_profil_file` VARCHAR(64),
  68. `image_couv_file` VARCHAR(64),
  69. `telephone` VARCHAR(32),
  70. `first_connection` TINYINT(1),
  71. PRIMARY KEY (`id`),
  72. INDEX `user_FI_1` (`city_id`),
  73. INDEX `user_FI_2` (`profile_id`),
  74. INDEX `user_FI_3` (`promo_id`)
  75. ) ENGINE=MyISAM;
  76. CREATE TABLE `role`
  77. (
  78. `id` INTEGER NOT NULL AUTO_INCREMENT,
  79. `name` VARCHAR(32),
  80. PRIMARY KEY (`id`)
  81. ) ENGINE=MyISAM;
  82. CREATE TABLE `page`
  83. (
  84. `id` INTEGER NOT NULL AUTO_INCREMENT,
  85. `name` VARCHAR(32),
  86. `route` VARCHAR(32),
  87. PRIMARY KEY (`id`)
  88. ) ENGINE=MyISAM;
  89. CREATE TABLE `itemMenu`
  90. (
  91. `id` INTEGER NOT NULL AUTO_INCREMENT,
  92. `route` VARCHAR(32),
  93. `name` VARCHAR(32),
  94. `order` INTEGER,
  95. `logState` VARCHAR(10) DEFAULT \'both\',
  96. `onlyFor` INTEGER(1) DEFAULT 0,
  97. `htmlClass` VARCHAR(20),
  98. PRIMARY KEY (`id`)
  99. ) ENGINE=MyISAM;
  100. CREATE TABLE `user_role`
  101. (
  102. `id` INTEGER NOT NULL AUTO_INCREMENT,
  103. `user_id` INTEGER NOT NULL,
  104. `role_id` INTEGER NOT NULL,
  105. PRIMARY KEY (`id`),
  106. INDEX `user_role_FI_1` (`user_id`),
  107. INDEX `user_role_FI_2` (`role_id`)
  108. ) ENGINE=MyISAM;
  109. CREATE TABLE `role_page`
  110. (
  111. `id` INTEGER NOT NULL AUTO_INCREMENT,
  112. `role_id` INTEGER NOT NULL,
  113. `page_id` INTEGER NOT NULL,
  114. PRIMARY KEY (`id`),
  115. INDEX `role_page_FI_1` (`role_id`),
  116. INDEX `role_page_FI_2` (`page_id`)
  117. ) ENGINE=MyISAM;
  118. CREATE TABLE `role_menu`
  119. (
  120. `id` INTEGER NOT NULL AUTO_INCREMENT,
  121. `menu_id` INTEGER NOT NULL,
  122. `role_id` INTEGER NOT NULL,
  123. PRIMARY KEY (`id`),
  124. INDEX `role_menu_FI_1` (`role_id`),
  125. INDEX `role_menu_FI_2` (`menu_id`)
  126. ) ENGINE=MyISAM;
  127. CREATE TABLE `company`
  128. (
  129. `id` INTEGER NOT NULL AUTO_INCREMENT,
  130. `address_id` INTEGER NOT NULL,
  131. `contact_id` INTEGER NOT NULL,
  132. `industry_id` INTEGER NOT NULL,
  133. `name` VARCHAR(32),
  134. `siret` INTEGER(32),
  135. `password` VARCHAR(128),
  136. `email` VARCHAR(64),
  137. `telephone` VARCHAR(16),
  138. `description` TEXT,
  139. `workforce` VARCHAR(16),
  140. `logo_file` VARCHAR(64),
  141. `url_website` VARCHAR(64),
  142. `first_connection` INTEGER(1),
  143. PRIMARY KEY (`id`),
  144. INDEX `company_FI_1` (`address_id`),
  145. INDEX `company_FI_2` (`contact_id`),
  146. INDEX `company_FI_3` (`industry_id`)
  147. ) ENGINE=MyISAM;
  148. CREATE TABLE `contact`
  149. (
  150. `id` INTEGER NOT NULL AUTO_INCREMENT,
  151. `firstname` VARCHAR(32),
  152. `lastname` VARCHAR(32),
  153. `profession` VARCHAR(32),
  154. `telephone` VARCHAR(32),
  155. `email` VARCHAR(32),
  156. PRIMARY KEY (`id`)
  157. ) ENGINE=MyISAM;
  158. CREATE TABLE `address`
  159. (
  160. `id` INTEGER NOT NULL AUTO_INCREMENT,
  161. `city_id` INTEGER NOT NULL,
  162. `street` VARCHAR(64),
  163. PRIMARY KEY (`id`),
  164. INDEX `address_FI_1` (`city_id`)
  165. ) ENGINE=MyISAM;
  166. CREATE TABLE `city`
  167. (
  168. `id` INTEGER NOT NULL AUTO_INCREMENT,
  169. `country_id` INTEGER NOT NULL,
  170. `name` VARCHAR(32),
  171. `cp` INTEGER(5),
  172. PRIMARY KEY (`id`),
  173. INDEX `city_FI_1` (`country_id`)
  174. ) ENGINE=MyISAM;
  175. CREATE TABLE `country`
  176. (
  177. `id` INTEGER NOT NULL AUTO_INCREMENT,
  178. `name` VARCHAR(32),
  179. PRIMARY KEY (`id`)
  180. ) ENGINE=MyISAM;
  181. CREATE TABLE `offerInternship`
  182. (
  183. `id` INTEGER NOT NULL AUTO_INCREMENT,
  184. `internship_id` INTEGER NOT NULL,
  185. `type` INTEGER(1),
  186. `name` VARCHAR(32),
  187. `profil` TEXT,
  188. PRIMARY KEY (`id`),
  189. INDEX `offerInternship_FI_1` (`internship_id`)
  190. ) ENGINE=MyISAM;
  191. CREATE TABLE `internship`
  192. (
  193. `id` INTEGER NOT NULL AUTO_INCREMENT,
  194. `offer_id` INTEGER NOT NULL,
  195. `user_id` INTEGER NOT NULL,
  196. `company_id` INTEGER NOT NULL,
  197. `tutor_id` INTEGER NOT NULL,
  198. `work_function` VARCHAR(32),
  199. `description` TEXT,
  200. `information` TEXT,
  201. `url_website_diffusion` VARCHAR(64),
  202. `signatory_lastname` VARCHAR(32),
  203. `signatory_firstname` VARCHAR(32),
  204. `signatory_function` VARCHAR(64),
  205. `master_lastname` VARCHAR(32),
  206. `master_firstname` VARCHAR(32),
  207. `master_email` VARCHAR(64),
  208. `master_telephone` VARCHAR(32),
  209. `valide` SMALLINT,
  210. `etabli` SMALLINT,
  211. `date_visite` DATE,
  212. `date_soutenance` DATE,
  213. `internship_begining` DATE,
  214. `internship_ending` DATE,
  215. PRIMARY KEY (`id`),
  216. INDEX `internship_FI_1` (`offer_id`),
  217. INDEX `internship_FI_2` (`user_id`),
  218. INDEX `internship_FI_3` (`company_id`)
  219. ) ENGINE=MyISAM;
  220. CREATE TABLE `promo`
  221. (
  222. `id` INTEGER NOT NULL AUTO_INCREMENT,
  223. `degree_id` INTEGER NOT NULL,
  224. `year` INTEGER(4) NOT NULL,
  225. PRIMARY KEY (`id`),
  226. INDEX `promo_FI_1` (`degree_id`)
  227. ) ENGINE=MyISAM;
  228. CREATE TABLE `profession`
  229. (
  230. `id` INTEGER NOT NULL AUTO_INCREMENT,
  231. `name` VARCHAR(64),
  232. `description` TEXT,
  233. PRIMARY KEY (`id`)
  234. ) ENGINE=MyISAM;
  235. CREATE TABLE `user_job`
  236. (
  237. `id` INTEGER NOT NULL AUTO_INCREMENT,
  238. `user_id` INTEGER NOT NULL,
  239. `profession_id` INTEGER NOT NULL,
  240. `company_id` INTEGER NOT NULL,
  241. `year_from` INTEGER(4),
  242. `year_to` INTEGER(4),
  243. `description` TEXT,
  244. PRIMARY KEY (`id`),
  245. INDEX `user_job_FI_1` (`user_id`),
  246. INDEX `user_job_FI_2` (`profession_id`),
  247. INDEX `user_job_FI_3` (`company_id`)
  248. ) ENGINE=MyISAM;
  249. CREATE TABLE `degree`
  250. (
  251. `id` INTEGER NOT NULL AUTO_INCREMENT,
  252. `name` VARCHAR(64),
  253. `option` VARCHAR(64),
  254. `summary` TEXT,
  255. PRIMARY KEY (`id`)
  256. ) ENGINE=MyISAM;
  257. CREATE TABLE `user_obtained_degree`
  258. (
  259. `id` INTEGER NOT NULL AUTO_INCREMENT,
  260. `user_id` INTEGER NOT NULL,
  261. `degree_id` INTEGER NOT NULL,
  262. `year_from` INTEGER(4),
  263. `year_to` INTEGER(4),
  264. PRIMARY KEY (`id`),
  265. INDEX `user_obtained_degree_FI_1` (`user_id`),
  266. INDEX `user_obtained_degree_FI_2` (`degree_id`)
  267. ) ENGINE=MyISAM;
  268. CREATE TABLE `univ_project`
  269. (
  270. `id` INTEGER NOT NULL AUTO_INCREMENT,
  271. `user_id` VARCHAR(64),
  272. `name` VARCHAR(64),
  273. `need` TEXT,
  274. `brief` TEXT,
  275. `website` VARCHAR(64),
  276. PRIMARY KEY (`id`),
  277. INDEX `univ_project_FI_1` (`user_id`)
  278. ) ENGINE=MyISAM;
  279. CREATE TABLE `user_member_unipro`
  280. (
  281. `id` INTEGER NOT NULL AUTO_INCREMENT,
  282. `user_id` INTEGER NOT NULL,
  283. `unipro_id` INTEGER NOT NULL,
  284. `profession_id` INTEGER NOT NULL,
  285. `year_from` INTEGER(4),
  286. `year_to` INTEGER(4),
  287. PRIMARY KEY (`id`),
  288. INDEX `user_member_unipro_FI_1` (`user_id`),
  289. INDEX `user_member_unipro_FI_2` (`unipro_id`),
  290. INDEX `user_member_unipro_FI_3` (`profession_id`)
  291. ) ENGINE=MyISAM;
  292. CREATE TABLE `industry`
  293. (
  294. `id` INTEGER NOT NULL AUTO_INCREMENT,
  295. `name` VARCHAR(64),
  296. PRIMARY KEY (`id`)
  297. ) ENGINE=MyISAM;
  298. # This restores the fkey checks, after having unset them earlier
  299. SET FOREIGN_KEY_CHECKS = 1;
  300. ',
  301. );
  302. }
  303. /**
  304. * Get the SQL statements for the Down migration
  305. *
  306. * @return array list of the SQL strings to execute for the Down migration
  307. * the keys being the datasources
  308. */
  309. public function getDownSQL()
  310. {
  311. return array (
  312. 'default' => '
  313. # This is a fix for InnoDB in MySQL >= 4.1.x
  314. # It "suspends judgement" for fkey relationships until are tables are set.
  315. SET FOREIGN_KEY_CHECKS = 0;
  316. DROP TABLE IF EXISTS `config`;
  317. DROP TABLE IF EXISTS `user`;
  318. DROP TABLE IF EXISTS `role`;
  319. DROP TABLE IF EXISTS `page`;
  320. DROP TABLE IF EXISTS `itemMenu`;
  321. DROP TABLE IF EXISTS `user_role`;
  322. DROP TABLE IF EXISTS `role_page`;
  323. DROP TABLE IF EXISTS `role_menu`;
  324. DROP TABLE IF EXISTS `company`;
  325. DROP TABLE IF EXISTS `contact`;
  326. DROP TABLE IF EXISTS `address`;
  327. DROP TABLE IF EXISTS `city`;
  328. DROP TABLE IF EXISTS `country`;
  329. DROP TABLE IF EXISTS `offerInternship`;
  330. DROP TABLE IF EXISTS `internship`;
  331. DROP TABLE IF EXISTS `promo`;
  332. DROP TABLE IF EXISTS `profession`;
  333. DROP TABLE IF EXISTS `user_job`;
  334. DROP TABLE IF EXISTS `degree`;
  335. DROP TABLE IF EXISTS `user_obtained_degree`;
  336. DROP TABLE IF EXISTS `univ_project`;
  337. DROP TABLE IF EXISTS `user_member_unipro`;
  338. DROP TABLE IF EXISTS `industry`;
  339. # This restores the fkey checks, after having unset them earlier
  340. SET FOREIGN_KEY_CHECKS = 1;
  341. ',
  342. );
  343. }
  344. }