Guest User

Untitled

a guest
Oct 19th, 2017
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.06 KB | None | 0 0
  1. <?php
  2.  
  3. /*--------+--------------------------+---------------------------+
  4. | | | Site Count |
  5. +--------+--------------------------+---------------------------+
  6. | Method | Config::get('multi.site')| 0 | 1 | > 1 |
  7. +--------+--------------------------+-------+-------+-----------+
  8. | create | TRUE | | | |
  9. + +--------------------------+-------+-------+-----------+
  10. | | FALSE | | edit | edit.list |
  11. +--------+--------------------------+-------+-------+-----------*/
  12.  
  13. /*-----------+--------------+---------------------------+
  14. | | | Site Count |
  15. +-----------+--------------+---------------------------+
  16. | Method | $request->id | 0 | 1 | > 1 |
  17. +-----------+--------------+--------+------+-----------+
  18. | edit | NULL | create | edit | edit.list |
  19. + +--------------+--------+------+-----------+
  20. | | match | create | | |
  21. + +--------------+--------+------+-----------+
  22. | | don't match | create | edit | edit.list |
  23. +-----------+--------------+--------+------+-----------+
  24. | edit/list | NULL | create | edit | |
  25. +-----------+--------------+--------+------+-----------*/
  26.  
  27. $site = Site::mySite();
  28. $match = ($request->id === null) ? false : (bool) $site->where('id', $request->id)->count();
  29. $result = (!$match || (Route::currentRouteName() == 'create' && ! \Config::get('setting.site.multi')));
  30.  
  31. switch ($site->count()) {
  32. case 0:
  33. if (Route::currentRouteName() != 'create' && $request->method() == 'GET') {
  34. return redirect()->route('create');
  35. }
  36. break;
  37.  
  38. case 1:
  39. if ($result) {
  40. return redirect()->route('edit', ['id' => $site->value('id')]);
  41. }
  42. break;
  43.  
  44. default: // > 1
  45. if ($result && (Route::currentRouteName() != 'edit.list')) {
  46. return redirect()->route('edit.list');
  47. }
  48. break;
  49. }
Add Comment
Please, Sign In to add comment