Advertisement
Guest User

Untitled

a guest
Mar 27th, 2015
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.65 KB | None | 0 0
  1. <?php
  2.  
  3. $installer = $this;
  4.  
  5. $installer->startSetup();
  6.  
  7. $installer->run("
  8. --
  9.  
  10. DROP TABLE IF EXISTS {$this->getTable('modulename')};
  11. CREATE TABLE {$this->getTable('modulename')} (
  12. `c_id` int unsigned NOT NULL auto_increment,
  13. `name` varchar(64) NOT NULL default,
  14. `middle_name` varchar(64) NULL default,
  15. `surname` varchar(64) NOT NULL default,
  16. `identity_id` char (32) NOT NULL,
  17. `house_number` varchar (16) NOT NULL,
  18. `flat_number` varchar (16) NOT NULL,
  19. `street` varchar (64) NOT NULL,
  20. `postal_code` varchar (16),
  21. `city` varchar (64) NOT NULL,
  22. `country` varchar (64) NOT NULL,
  23. `region` int NOT NULL FOREIGN KEY (`id_r`),
  24. `email` varchar (128) NOT NULL,
  25. `phone_num` char (16) NOT NULL,
  26. `registration_date` datetime NULL,
  27. `approval_date` datetime NULL,
  28. `approved` smallint NOT NULL default 0,
  29. `status` smallint(6) NOT NULL default 1,
  30. `deleted` smallint NOT NULL,
  31. `content` text NOT NULL default '',
  32. `created_time` datetime NULL,
  33. `update_time` datetime NULL,
  34. PRIMARY KEY (`c_id`),
  35. FOREIGN KEY (`id_s`)
  36. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  37.  
  38. --
  39.  
  40. DROP TABLE IF EXISTS {$this->getTable('modulename_regions')};
  41. CREATE TABLE {$this->getTable('modulename_regions')}(
  42. `cr_id` int NOT NULL auto_increment,
  43. `id_c` int NOT NULL,
  44. `id_r` int NOT NULL FOREIGN KEY (`id_r`),
  45. `deleted` NOT NULL default 0,
  46. PRIMARY KEY (`cr_id`),
  47. FOREIGN KEY CONSTRAINT(`id_c`)
  48. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  49.  
  50. --
  51.  
  52. DROP TABLE IF EXISTS {$this->getTable('modulename_state')};
  53. CREATE TABLE {$this->getTable('modulename_regions')}(
  54. `cs_id` int NOT NULL auto_increment,
  55. `state` varchar(16) NOT NULL,
  56. `deleted` tinyint NOT NULL default 0,
  57. PRIMARY KEY (`cr_id`)
  58. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  59.  
  60. --
  61.  
  62. DROP TABLE IF EXISTS {$this->getTable('modulename_manager_level')};
  63. CREATE TABLE {$this->getTable('manage_level')}(
  64. `ml_id` int NOT NULL auto_increment,
  65. `state` varchar(16) NOT NULL,
  66. `deleted` tinyint NOT NULL default 0,
  67. PRIMARY KEY (`ms_id`)
  68. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  69.  
  70. --
  71.  
  72. DROP TABLE IF EXISTS {$this->getTable('modulename_manager_state')};
  73. CREATE TABLE {$this->getTable('modulename_manager')}(
  74. `ms_id` int NOT NULL auto_increment,
  75. `state` varchar(16) NOT NULL,
  76. `deleted` tinyint NOT NULL default 0,
  77. PRIMARY KEY (`ms_id`)
  78. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  79.  
  80. --
  81.  
  82. DROP TABLE IF EXISTS {$this->getTable('modulename_manager')};
  83. CREATE TABLE {$this->getTable('manager')} (
  84. `m_id` int unsigned NOT NULL auto_increment,
  85. `name` varchar(64) NOT NULL default '',
  86. `middle_name` varchar(64) NULL default '',
  87. `surname` varchar(64) NOT NULL default '',
  88. `identity_id` char (32) NOT NULL,
  89. `house_number` varchar (16) NOT NULL,
  90. `flat_number` varchar (16) NOT NULL,
  91. `street` varchar (64) NOT NULL,
  92. `postal_code` varchar (16) '',
  93. `city` varchar (64) NOT NULL,
  94. `country` varchar (64) NOT NULL,
  95. `region` int NOT NULL,
  96. `email` varchar (128) NOT NULL,
  97. `phone_num` char (16) NOT NULL,
  98. `registration_date` datetime NULL,
  99. `approval_date` datetime NULL,
  100. `approved` smallint NOT NULL default 0,
  101. `status` smallint(6) NOT NULL default '1',
  102. `parent_id` int NULL default'',
  103. `deleted` smallint NOT NULL,
  104. `content` text NOT NULL default '',
  105. `status` smallint(6) NOT NULL default 0,
  106. PRIMARY KEY (`m_id`)
  107. FOREIGN KEY (`ms_id`),
  108. FOREIGN KEY (id_m),
  109. FOREIGN KEY (`r_id`),
  110. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  111.  
  112. --
  113.  
  114. DROP TABLE IF EXISTS {$this->getTable('modulename_manger_regions')};
  115. CREATE TABLE {$this->getTable('manager_regions')}(
  116. `mr_id` int NOT NULL auto_increment,
  117. `id_m` int NOT NULL,
  118. `id_r` int NOT NULL,
  119. `deleted` smallint NOT NULL default 0,
  120. PRIMARY KEY (`ms_id`),
  121. CONSTRAINT FOREIGN KEY UNIQUE (id_r),
  122. FOREIGN KEY (m_id),
  123. FOREIGN KEY (`r_id`)
  124. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  125.  
  126. --
  127.  
  128. DROP TABLE IF EXISTS {$this->getTable('modulename_region')};
  129. CREATE TABLE {$this->getTable('region')}(
  130. `r_id` int NOT NULL auto_increment,
  131. `name` varchar(64) NOT NULL,
  132. `deleted` smallint NOT NULL default 0,
  133. PRIMARY KEY (`r_id`)
  134. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  135. ");
  136.  
  137. $installer->endSetup();
  138.  
  139. <?xml version="1.0"?>
  140. <config>
  141. <modules>
  142. <Namespace_Modulename>
  143. <version>0.1.0</version>
  144. </Namespace_Modulename>
  145. </modules>
  146. <global>
  147. <helpers>
  148. <modulename>
  149. <class>Namespace_Modulename_Helper</class>
  150. </modulename>
  151. </helpers>
  152. <blocks>
  153. <modulename>
  154. <class>Namespace_Modulename_Block</class>
  155. </modulename>
  156. </blocks>
  157. <models>
  158. <modulename>
  159. <class>Namespace_Modulename_Model</class>
  160. <resourceModel>modulename_mysql4</resourceModel>
  161. </modulename>
  162. <modulename_mysql4>
  163. <class>Namespace_Modulename_Model_Mysql4</class>
  164. <entities>
  165. <modulename>
  166. <table>modulename</table>
  167. </modulename>
  168. <regions>
  169. <table>modulename_regions</table>
  170. </regions>
  171. <state>
  172. <table>modulename_state</table>
  173. </state>
  174. <managerlevel>
  175. <table>modulename_manager_level</table>
  176. </managerlevel>
  177. <managerstate>
  178. <table>modulename_manager_state</table>
  179. </managerstate>
  180. <manager>
  181. <table>modulename_manager</table>
  182. </manager>
  183. <manageregions>
  184. <table>modulename_manager_regions</table>
  185. </manageregions>
  186. <region>
  187. <table>modulename_region</table>
  188. </region>
  189. </entities>
  190. </modulename_mysql4>
  191. </models>
  192. <resources>
  193. <modulename_setup>
  194. <setup>
  195. <module>Namespace_Modulename</module>
  196. </setup>
  197. <connection>
  198. <use>core_setup</use>
  199. </connection>
  200. </modulename_setup>
  201. <modulename_write>
  202. <connection>
  203. <use>core_write</use>
  204. </connection>
  205. </modulename_write>
  206. <modulename_read>
  207. <connection>
  208. <use>core_read</use>
  209. </connection>
  210. </modulename_read>
  211. </resources>
  212. </global>
  213. <admin>
  214. <routers>
  215. <modulename>
  216. <use>admin</use>
  217. <args>
  218. <module>Namespace_Modulename</module>
  219. <frontName>modulename</frontName>
  220. </args>
  221. </modulename>
  222. </routers>
  223. </admin>
  224. <adminhtml>
  225. <menu>
  226. <modulename module="modulename">
  227. <title>modulename</title>
  228. <sort_order>100</sort_order>
  229. <children>
  230. <manager module="modulename">
  231. <title>Manage Manager</title>
  232. <sort_order>50</sort_order>
  233. <action>modulename/adminhtml_manager</action>
  234. </manager>
  235. </children>
  236. </modulename>
  237. </menu>
  238. <acl>
  239. <resources>
  240. <all>
  241. <title>Allow Everything</title>
  242. </all>
  243. <admin>
  244. <children>
  245. <modulename translate="title" module="modulename">
  246. <title>modulename</title>
  247. <sort_order>1000</sort_order>
  248. <children>
  249. <manager translate="title">
  250. <title>Manage Manager</title>
  251. <sort_order>50</sort_order>
  252. </manager>
  253. </children>
  254. </modulename>
  255. </children>
  256. </admin>
  257. </resources>
  258. </acl>
  259. <layout>
  260. <updates>
  261. <modulename>
  262. <file>modulename.xml</file>
  263. </modulename>
  264. </updates>
  265. </layout>
  266. </adminhtml>
  267. </config>
  268.  
  269. <?php
  270.  
  271. $installer = $this;
  272.  
  273. $installer->startSetup();
  274.  
  275. $installer->run("
  276. --
  277.  
  278. DROP TABLE IF EXISTS {$this->getTable('namespace/modulename')};
  279. CREATE TABLE {$this->getTable('namespace/modulename')} (
  280. `c_id` int unsigned NOT NULL auto_increment,
  281. `name` varchar(64) NOT NULL default,
  282. `middle_name` varchar(64) NULL default,
  283. `surname` varchar(64) NOT NULL default,
  284. `identity_id` char (32) NOT NULL,
  285. `house_number` varchar (16) NOT NULL,
  286. `flat_number` varchar (16) NOT NULL,
  287. `street` varchar (64) NOT NULL,
  288. `postal_code` varchar (16),
  289. `city` varchar (64) NOT NULL,
  290. `country` varchar (64) NOT NULL,
  291. `region` int NOT NULL FOREIGN KEY (`id_r`),
  292. `email` varchar (128) NOT NULL,
  293. `phone_num` char (16) NOT NULL,
  294. `registration_date` datetime NULL,
  295. `approval_date` datetime NULL,
  296. `approved` smallint NOT NULL default 0,
  297. `status` smallint(6) NOT NULL default 1,
  298. `deleted` smallint NOT NULL,
  299. `content` text NOT NULL default '',
  300. `created_time` datetime NULL,
  301. `update_time` datetime NULL,
  302. PRIMARY KEY (`c_id`),
  303. FOREIGN KEY (`id_s`)
  304. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  305.  
  306. --
  307.  
  308. DROP TABLE IF EXISTS {$this->getTable('namespace/modulename_regions')};
  309. CREATE TABLE {$this->getTable('namespace/modulename_regions')}(
  310. `cr_id` int NOT NULL auto_increment,
  311. `id_c` int NOT NULL,
  312. `id_r` int NOT NULL FOREIGN KEY (`id_r`),
  313. `deleted` NOT NULL default 0,
  314. PRIMARY KEY (`cr_id`),
  315. FOREIGN KEY CONSTRAINT(`id_c`)
  316. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  317.  
  318. --
  319.  
  320. DROP TABLE IF EXISTS {$this->getTable('namespace/modulename_state')};
  321. CREATE TABLE {$this->getTable('namespace/modulename_regions')}(
  322. `cs_id` int NOT NULL auto_increment,
  323. `state` varchar(16) NOT NULL,
  324. `deleted` tinyint NOT NULL default 0,
  325. PRIMARY KEY (`cr_id`)
  326. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  327.  
  328. --
  329.  
  330. DROP TABLE IF EXISTS {$this->getTable('namespace/modulename_manager_level')};
  331. CREATE TABLE {$this->getTable('belcorp/manage_level')}(
  332. `ml_id` int NOT NULL auto_increment,
  333. `state` varchar(16) NOT NULL,
  334. `deleted` tinyint NOT NULL default 0,
  335. PRIMARY KEY (`ms_id`)
  336. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  337.  
  338. --
  339.  
  340. DROP TABLE IF EXISTS {$this->getTable('namespace/modulename_manager_state')};
  341. CREATE TABLE {$this->getTable('namespace/modulename_manager')}(
  342. `ms_id` int NOT NULL auto_increment,
  343. `state` varchar(16) NOT NULL,
  344. `deleted` tinyint NOT NULL default 0,
  345. PRIMARY KEY (`ms_id`)
  346. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  347.  
  348. --
  349.  
  350. DROP TABLE IF EXISTS {$this->getTable('namespace/modulename_manager')};
  351. CREATE TABLE {$this->getTable('manager')} (
  352. `m_id` int unsigned NOT NULL auto_increment,
  353. `name` varchar(64) NOT NULL default '',
  354. `middle_name` varchar(64) NULL default '',
  355. `surname` varchar(64) NOT NULL default '',
  356. `identity_id` char (32) NOT NULL,
  357. `house_number` varchar (16) NOT NULL,
  358. `flat_number` varchar (16) NOT NULL,
  359. `street` varchar (64) NOT NULL,
  360. `postal_code` varchar (16) '',
  361. `city` varchar (64) NOT NULL,
  362. `country` varchar (64) NOT NULL,
  363. `region` int NOT NULL,
  364. `email` varchar (128) NOT NULL,
  365. `phone_num` char (16) NOT NULL,
  366. `registration_date` datetime NULL,
  367. `approval_date` datetime NULL,
  368. `approved` smallint NOT NULL default 0,
  369. `status` smallint(6) NOT NULL default '1',
  370. `parent_id` int NULL default'',
  371. `deleted` smallint NOT NULL,
  372. `content` text NOT NULL default '',
  373. `status` smallint(6) NOT NULL default 0,
  374. PRIMARY KEY (`m_id`)
  375. FOREIGN KEY (`ms_id`),
  376. FOREIGN KEY (id_m),
  377. FOREIGN KEY (`r_id`),
  378. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  379.  
  380. --
  381.  
  382. DROP TABLE IF EXISTS {$this->getTable('namespace/modulename_manger_regions')};
  383. CREATE TABLE {$this->getTable('belcorp/manager_regions')}(
  384. `mr_id` int NOT NULL auto_increment,
  385. `id_m` int NOT NULL,
  386. `id_r` int NOT NULL,
  387. `deleted` smallint NOT NULL default 0,
  388. PRIMARY KEY (`ms_id`),
  389. CONSTRAINT `mr_id` FOREIGN KEY (`id_r`) REFERENCES {$this->getTable('namespace/modulename_region')}(`r_id`) ON DELETE CASCADE ON UPDATE CASCADE,
  390. FOREIGN KEY (m_id),
  391. FOREIGN KEY (`r_id`)
  392. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  393.  
  394. --
  395.  
  396. DROP TABLE IF EXISTS {$this->getTable('namespace/modulename_region')};
  397. CREATE TABLE {$this->getTable('belcorp/region')}(
  398. `r_id` int NOT NULL auto_increment,
  399. `name` varchar(64) NOT NULL,
  400. `deleted` smallint NOT NULL default 0,
  401. PRIMARY KEY (`r_id`)
  402. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  403. ");
  404.  
  405. $installer->endSetup();
  406.  
  407. DROP TABLE IF EXISTS {$this->getTable('modelname/sometable')};
  408. CREATE TABLE IF NOT EXISTS {$this->getTable('modelname/sometable')} (
  409. `book_id` smallint(6) NOT NULL AUTO_INCREMENT,
  410. `description` varchar(255) DEFAULT NULL,
  411. `product_id` int(10) unsigned NOT NULL,
  412. PRIMARY KEY (`book_id`),
  413. KEY `product_id` (`product_id`),
  414. CONSTRAINT `test_some_test_fk_2` FOREIGN KEY (`product_id`) REFERENCES {$this->getTable('catalog/product')}(`entity_id`) ON DELETE CASCADE ON UPDATE CASCADE
  415. ) ENGINE=InnoDB DEFAULT CHARSET=utf8
  416.  
  417. <models>
  418. <modelname> <!-- Attention -->
  419. <class>Some_Module_Model</class>
  420. <resourceModel>some_module_mysql4</resourceModel>
  421. </modelname>
  422. <some_module_mysql4>
  423. <class>Some_Module_Model_Mysql4</class>
  424. <entities>
  425. <tablename> <!-- Attention -->
  426. <table>some_test_table</table>
  427. </tablename>
  428. </entities>
  429. </some_module_mysql4>
  430. </models>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement