index.php 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. <?php
  2. require_once 'inc/prerequisites.inc.php';
  3. if (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] == 'admin') {
  4. header('Location: /admin.php');
  5. exit();
  6. }
  7. elseif (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] == 'domainadmin') {
  8. header('Location: /mailbox.php');
  9. exit();
  10. }
  11. elseif (isset($_SESSION['mailcow_cc_role']) && $_SESSION['mailcow_cc_role'] == 'user') {
  12. header('Location: /user.php');
  13. exit();
  14. }
  15. require_once 'inc/header.inc.php';
  16. $_SESSION['return_to'] = $_SERVER['REQUEST_URI'];
  17. ?>
  18. <div class="container">
  19. <div class="row">
  20. <div class="col-md-offset-3 col-md-6">
  21. <div class="panel panel-default">
  22. <div class="panel-heading"><span class="glyphicon glyphicon-user" aria-hidden="true"></span> <?= $lang['login']['login']; ?></div>
  23. <div class="panel-body">
  24. <div class="text-center mailcow-logo"><img src="<?=($main_logo = customize('get', 'main_logo')) ? $main_logo : '/img/cow_mailcow.svg';?>" alt="mailcow"></div>
  25. <legend>mailcow UI</legend>
  26. <form method="post" autofill="off">
  27. <div class="form-group">
  28. <label class="sr-only" for="login_user"><?= $lang['login']['username']; ?></label>
  29. <div class="input-group">
  30. <div class="input-group-addon"><i class="glyphicon glyphicon-user"></i></div>
  31. <input name="login_user" autocorrect="off" autocapitalize="none" type="text" id="login_user" class="form-control" placeholder="<?= $lang['login']['username']; ?>" required="" autofocus="">
  32. </div>
  33. </div>
  34. <div class="form-group">
  35. <label class="sr-only" for="pass_user"><?= $lang['login']['password']; ?></label>
  36. <div class="input-group">
  37. <div class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></div>
  38. <input name="pass_user" type="password" id="pass_user" class="form-control" placeholder="<?= $lang['login']['password']; ?>" required="">
  39. </div>
  40. </div>
  41. <div class="form-group">
  42. <button type="submit" class="btn btn-success" value="Login"><?= $lang['login']['login']; ?></button>
  43. <div class="btn-group pull-right">
  44. <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
  45. <span class="lang-sm lang-lbl" lang="<?= $_SESSION['mailcow_locale']; ?>"></span> <span class="caret"></span>
  46. </button>
  47. <ul class="dropdown-menu">
  48. <?php
  49. foreach ($AVAILABLE_LANGUAGES as $language):
  50. ?>
  51. <li<?= ($_SESSION['mailcow_locale'] == $language) ? ' class="active"' : ''; ?>><a href="?<?= http_build_query(array_merge($_GET, array('lang' => $language))) ?>"><span class="lang-xs lang-lbl-full" lang="<?= $language; ?>"></span></a></li>
  52. <?php
  53. endforeach;
  54. ?>
  55. </ul>
  56. </div>
  57. </div>
  58. </form>
  59. <?php
  60. if (isset($_SESSION['ldelay']) && $_SESSION['ldelay'] != '0'):
  61. ?>
  62. <p><div class="alert alert-info"><?= sprintf($lang['login']['delayed'], $_SESSION['ldelay']); ?></b></div></p>
  63. <?php
  64. endif;
  65. ?>
  66. <legend>mailcow Apps</legend>
  67. <?php
  68. foreach ($MAILCOW_APPS as $app):
  69. ?>
  70. <a href="<?= htmlspecialchars($app['link']); ?>" role="button" title="<?= htmlspecialchars($app['description']); ?>" class="btn btn-lg btn-default"><?= htmlspecialchars($app['name']); ?></a>&nbsp;
  71. <?php
  72. endforeach;
  73. $app_links = customize('get', 'app_links');
  74. if (!empty($app_links)) {
  75. foreach ($app_links as $row) {
  76. foreach ($row as $key => $val):
  77. ?>
  78. <a href="<?= htmlspecialchars($val); ?>" role="button" class="btn btn-lg btn-default"><?= htmlspecialchars($key); ?></a>&nbsp;
  79. <?php
  80. endforeach;
  81. }
  82. }
  83. ?>
  84. </div>
  85. </div>
  86. </div>
  87. <div class="col-md-offset-3 col-md-6">
  88. <div class="panel panel-default">
  89. <div class="panel-heading">
  90. <a data-toggle="collapse" href="#collapse1"><span class="glyphicon glyphicon-question-sign" aria-hidden="true"></span> <?= $lang['start']['help']; ?></a>
  91. </div>
  92. <div id="collapse1" class="panel-collapse collapse">
  93. <div class="panel-body">
  94. <p><span style="border-bottom: 1px dotted #999;">mailcow UI</span></p>
  95. <p><?= $lang['start']['mailcow_panel_detail']; ?></p>
  96. <p><span style="border-bottom: 1px dotted #999;">mailcow Apps</span></p>
  97. <p><?= $lang['start']['mailcow_apps_detail']; ?></p>
  98. </div>
  99. </div>
  100. </div>
  101. </div>
  102. </div>
  103. </div><!-- /.container -->
  104. <script src="js/index.js"></script>
  105. <?php
  106. require_once 'inc/footer.inc.php';