PageRenderTime 42ms CodeModel.GetById 13ms RepoModel.GetById 0ms app.codeStats 0ms

/database/seeds/DataRowsTableSeeder.php

https://gitlab.com/alanrodas/ddhhunq
PHP | 386 lines | 350 code | 25 blank | 11 comment | 22 complexity | 05e630e26bb979fa5d3a48fef670ce55 MD5 | raw file
  1. <?php
  2. use Illuminate\Database\Seeder;
  3. use TCG\Voyager\Models\DataRow;
  4. use TCG\Voyager\Models\DataType;
  5. class DataRowsTableSeeder extends Seeder
  6. {
  7. /**
  8. * Auto generated seed file.
  9. */
  10. public function run()
  11. {
  12. $userDataType = DataType::where('slug', 'users')->firstOrFail();
  13. $menuDataType = DataType::where('slug', 'menus')->firstOrFail();
  14. $roleDataType = DataType::where('slug', 'roles')->firstOrFail();
  15. $dataRow = $this->dataRow($userDataType, 'id');
  16. if (!$dataRow->exists) {
  17. $dataRow->fill([
  18. 'type' => 'number',
  19. 'display_name' => __('voyager::seeders.data_rows.id'),
  20. 'required' => 1,
  21. 'browse' => 0,
  22. 'read' => 0,
  23. 'edit' => 0,
  24. 'add' => 0,
  25. 'delete' => 0,
  26. 'details' => '',
  27. 'order' => 1,
  28. ])->save();
  29. }
  30. $dataRow = $this->dataRow($userDataType, 'name');
  31. if (!$dataRow->exists) {
  32. $dataRow->fill([
  33. 'type' => 'text',
  34. 'display_name' => __('voyager::seeders.data_rows.name'),
  35. 'required' => 1,
  36. 'browse' => 1,
  37. 'read' => 1,
  38. 'edit' => 1,
  39. 'add' => 1,
  40. 'delete' => 1,
  41. 'details' => '',
  42. 'order' => 2,
  43. ])->save();
  44. }
  45. $dataRow = $this->dataRow($userDataType, 'email');
  46. if (!$dataRow->exists) {
  47. $dataRow->fill([
  48. 'type' => 'text',
  49. 'display_name' => __('voyager::seeders.data_rows.email'),
  50. 'required' => 1,
  51. 'browse' => 1,
  52. 'read' => 1,
  53. 'edit' => 1,
  54. 'add' => 1,
  55. 'delete' => 1,
  56. 'details' => '',
  57. 'order' => 3,
  58. ])->save();
  59. }
  60. $dataRow = $this->dataRow($userDataType, 'password');
  61. if (!$dataRow->exists) {
  62. $dataRow->fill([
  63. 'type' => 'password',
  64. 'display_name' => __('voyager::seeders.data_rows.password'),
  65. 'required' => 1,
  66. 'browse' => 0,
  67. 'read' => 0,
  68. 'edit' => 1,
  69. 'add' => 1,
  70. 'delete' => 0,
  71. 'details' => '',
  72. 'order' => 4,
  73. ])->save();
  74. }
  75. $dataRow = $this->dataRow($userDataType, 'remember_token');
  76. if (!$dataRow->exists) {
  77. $dataRow->fill([
  78. 'type' => 'text',
  79. 'display_name' => __('voyager::seeders.data_rows.remember_token'),
  80. 'required' => 0,
  81. 'browse' => 0,
  82. 'read' => 0,
  83. 'edit' => 0,
  84. 'add' => 0,
  85. 'delete' => 0,
  86. 'details' => '',
  87. 'order' => 5,
  88. ])->save();
  89. }
  90. $dataRow = $this->dataRow($userDataType, 'created_at');
  91. if (!$dataRow->exists) {
  92. $dataRow->fill([
  93. 'type' => 'timestamp',
  94. 'display_name' => __('voyager::seeders.data_rows.created_at'),
  95. 'required' => 0,
  96. 'browse' => 1,
  97. 'read' => 1,
  98. 'edit' => 0,
  99. 'add' => 0,
  100. 'delete' => 0,
  101. 'details' => '',
  102. 'order' => 6,
  103. ])->save();
  104. }
  105. $dataRow = $this->dataRow($userDataType, 'updated_at');
  106. if (!$dataRow->exists) {
  107. $dataRow->fill([
  108. 'type' => 'timestamp',
  109. 'display_name' => __('voyager::seeders.data_rows.updated_at'),
  110. 'required' => 0,
  111. 'browse' => 0,
  112. 'read' => 0,
  113. 'edit' => 0,
  114. 'add' => 0,
  115. 'delete' => 0,
  116. 'details' => '',
  117. 'order' => 7,
  118. ])->save();
  119. }
  120. $dataRow = $this->dataRow($userDataType, 'avatar');
  121. if (!$dataRow->exists) {
  122. $dataRow->fill([
  123. 'type' => 'image',
  124. 'display_name' => __('voyager::seeders.data_rows.avatar'),
  125. 'required' => 0,
  126. 'browse' => 1,
  127. 'read' => 1,
  128. 'edit' => 1,
  129. 'add' => 1,
  130. 'delete' => 1,
  131. 'details' => '',
  132. 'order' => 8,
  133. ])->save();
  134. }
  135. $dataRow = $this->dataRow($userDataType, 'user_belongsto_role_relationship');
  136. if (!$dataRow->exists) {
  137. $dataRow->fill([
  138. 'type' => 'relationship',
  139. 'display_name' => __('voyager::seeders.data_rows.role'),
  140. 'required' => 0,
  141. 'browse' => 1,
  142. 'read' => 1,
  143. 'edit' => 1,
  144. 'add' => 1,
  145. 'delete' => 0,
  146. 'details' => '{"model":"TCG\\\Voyager\\\Models\\\Role","table":"roles","type":"belongsTo","column":"role_id","key":"id","label":"display_name","pivot_table":"roles","pivot":"0"}',
  147. 'order' => 10,
  148. ])->save();
  149. }
  150. $dataRow = $this->dataRow($userDataType, 'user_belongstomany_role_relationship');
  151. if (!$dataRow->exists) {
  152. $dataRow->fill([
  153. 'type' => 'relationship',
  154. 'display_name' => 'Roles',
  155. 'required' => 0,
  156. 'browse' => 1,
  157. 'read' => 1,
  158. 'edit' => 1,
  159. 'add' => 1,
  160. 'delete' => 0,
  161. 'details' => '{"model":"TCG\\\Voyager\\\Models\\\Role","table":"roles","type":"belongsToMany","column":"id","key":"id","label":"display_name","pivot_table":"user_roles","pivot":"1","taggable":"0"}',
  162. 'order' => 11,
  163. ])->save();
  164. }
  165. $dataRow = $this->dataRow($userDataType, 'locale');
  166. if (!$dataRow->exists) {
  167. $dataRow->fill([
  168. 'type' => 'text',
  169. 'display_name' => 'Locale',
  170. 'required' => 0,
  171. 'browse' => 1,
  172. 'read' => 1,
  173. 'edit' => 1,
  174. 'add' => 1,
  175. 'delete' => 0,
  176. 'details' => '',
  177. 'order' => 12,
  178. ])->save();
  179. }
  180. $dataRow = $this->dataRow($userDataType, 'settings');
  181. if (!$dataRow->exists) {
  182. $dataRow->fill([
  183. 'type' => 'hidden',
  184. 'display_name' => 'Settings',
  185. 'required' => 0,
  186. 'browse' => 0,
  187. 'read' => 0,
  188. 'edit' => 0,
  189. 'add' => 0,
  190. 'delete' => 0,
  191. 'details' => '',
  192. 'order' => 12,
  193. ])->save();
  194. }
  195. $dataRow = $this->dataRow($menuDataType, 'id');
  196. if (!$dataRow->exists) {
  197. $dataRow->fill([
  198. 'type' => 'number',
  199. 'display_name' => __('voyager::seeders.data_rows.id'),
  200. 'required' => 1,
  201. 'browse' => 0,
  202. 'read' => 0,
  203. 'edit' => 0,
  204. 'add' => 0,
  205. 'delete' => 0,
  206. 'details' => '',
  207. 'order' => 1,
  208. ])->save();
  209. }
  210. $dataRow = $this->dataRow($menuDataType, 'name');
  211. if (!$dataRow->exists) {
  212. $dataRow->fill([
  213. 'type' => 'text',
  214. 'display_name' => __('voyager::seeders.data_rows.name'),
  215. 'required' => 1,
  216. 'browse' => 1,
  217. 'read' => 1,
  218. 'edit' => 1,
  219. 'add' => 1,
  220. 'delete' => 1,
  221. 'details' => '',
  222. 'order' => 2,
  223. ])->save();
  224. }
  225. $dataRow = $this->dataRow($menuDataType, 'created_at');
  226. if (!$dataRow->exists) {
  227. $dataRow->fill([
  228. 'type' => 'timestamp',
  229. 'display_name' => __('voyager::seeders.data_rows.created_at'),
  230. 'required' => 0,
  231. 'browse' => 0,
  232. 'read' => 0,
  233. 'edit' => 0,
  234. 'add' => 0,
  235. 'delete' => 0,
  236. 'details' => '',
  237. 'order' => 3,
  238. ])->save();
  239. }
  240. $dataRow = $this->dataRow($menuDataType, 'updated_at');
  241. if (!$dataRow->exists) {
  242. $dataRow->fill([
  243. 'type' => 'timestamp',
  244. 'display_name' => __('voyager::seeders.data_rows.updated_at'),
  245. 'required' => 0,
  246. 'browse' => 0,
  247. 'read' => 0,
  248. 'edit' => 0,
  249. 'add' => 0,
  250. 'delete' => 0,
  251. 'details' => '',
  252. 'order' => 4,
  253. ])->save();
  254. }
  255. $dataRow = $this->dataRow($roleDataType, 'id');
  256. if (!$dataRow->exists) {
  257. $dataRow->fill([
  258. 'type' => 'number',
  259. 'display_name' => __('voyager::seeders.data_rows.id'),
  260. 'required' => 1,
  261. 'browse' => 0,
  262. 'read' => 0,
  263. 'edit' => 0,
  264. 'add' => 0,
  265. 'delete' => 0,
  266. 'details' => '',
  267. 'order' => 1,
  268. ])->save();
  269. }
  270. $dataRow = $this->dataRow($roleDataType, 'name');
  271. if (!$dataRow->exists) {
  272. $dataRow->fill([
  273. 'type' => 'text',
  274. 'display_name' => __('voyager::seeders.data_rows.name'),
  275. 'required' => 1,
  276. 'browse' => 1,
  277. 'read' => 1,
  278. 'edit' => 1,
  279. 'add' => 1,
  280. 'delete' => 1,
  281. 'details' => '',
  282. 'order' => 2,
  283. ])->save();
  284. }
  285. $dataRow = $this->dataRow($roleDataType, 'created_at');
  286. if (!$dataRow->exists) {
  287. $dataRow->fill([
  288. 'type' => 'timestamp',
  289. 'display_name' => __('voyager::seeders.data_rows.created_at'),
  290. 'required' => 0,
  291. 'browse' => 0,
  292. 'read' => 0,
  293. 'edit' => 0,
  294. 'add' => 0,
  295. 'delete' => 0,
  296. 'details' => '',
  297. 'order' => 3,
  298. ])->save();
  299. }
  300. $dataRow = $this->dataRow($roleDataType, 'updated_at');
  301. if (!$dataRow->exists) {
  302. $dataRow->fill([
  303. 'type' => 'timestamp',
  304. 'display_name' => __('voyager::seeders.data_rows.updated_at'),
  305. 'required' => 0,
  306. 'browse' => 0,
  307. 'read' => 0,
  308. 'edit' => 0,
  309. 'add' => 0,
  310. 'delete' => 0,
  311. 'details' => '',
  312. 'order' => 4,
  313. ])->save();
  314. }
  315. $dataRow = $this->dataRow($roleDataType, 'display_name');
  316. if (!$dataRow->exists) {
  317. $dataRow->fill([
  318. 'type' => 'text',
  319. 'display_name' => __('voyager::seeders.data_rows.display_name'),
  320. 'required' => 1,
  321. 'browse' => 1,
  322. 'read' => 1,
  323. 'edit' => 1,
  324. 'add' => 1,
  325. 'delete' => 1,
  326. 'details' => '',
  327. 'order' => 5,
  328. ])->save();
  329. }
  330. $dataRow = $this->dataRow($userDataType, 'role_id');
  331. if (!$dataRow->exists) {
  332. $dataRow->fill([
  333. 'type' => 'text',
  334. 'display_name' => __('voyager::seeders.data_rows.role'),
  335. 'required' => 1,
  336. 'browse' => 1,
  337. 'read' => 1,
  338. 'edit' => 1,
  339. 'add' => 1,
  340. 'delete' => 1,
  341. 'details' => '',
  342. 'order' => 9,
  343. ])->save();
  344. }
  345. }
  346. /**
  347. * [dataRow description].
  348. *
  349. * @param [type] $type [description]
  350. * @param [type] $field [description]
  351. *
  352. * @return [type] [description]
  353. */
  354. protected function dataRow($type, $field)
  355. {
  356. return DataRow::firstOrNew([
  357. 'data_type_id' => $type->id,
  358. 'field' => $field,
  359. ]);
  360. }
  361. }