diff options
Diffstat (limited to 'modules/gallery/views')
| -rw-r--r-- | modules/gallery/views/admin_users.html.php | 138 | ||||
| -rw-r--r-- | modules/gallery/views/admin_users_group.html.php | 38 | ||||
| -rw-r--r-- | modules/gallery/views/login.html.php | 22 | ||||
| -rw-r--r-- | modules/gallery/views/login_ajax.html.php | 45 | ||||
| -rw-r--r-- | modules/gallery/views/reset_password.html.php | 17 | ||||
| -rw-r--r-- | modules/gallery/views/user_languages_block.html.php | 19 | 
6 files changed, 279 insertions, 0 deletions
diff --git a/modules/gallery/views/admin_users.html.php b/modules/gallery/views/admin_users.html.php new file mode 100644 index 00000000..82d0926c --- /dev/null +++ b/modules/gallery/views/admin_users.html.php @@ -0,0 +1,138 @@ +<?php defined("SYSPATH") or die("No direct script access.") ?> +<script type="text/javascript"> +  var add_user_to_group_url = "<?= url::site("admin/users/add_user_to_group/__USERID__/__GROUPID__?csrf=$csrf") ?>"; +  $(document).ready(function(){ +    $("#g-user-admin-list .g-draggable").draggable({ +      helper: "clone" +    }); +    $("#g-group-admin .g-group").droppable({ +      accept: ".core-info", +      hoverClass: "g-selected", +      drop: function(ev, ui) { +        var user_id = $(ui.draggable).attr("id").replace("user-", ""); +        var group_id = $(this).attr("id").replace("group-", ""); +        $.get(add_user_to_group_url.replace("__USERID__", user_id).replace("__GROUPID__", group_id), +              {}, +              function() { +                reload_group(group_id); +              }); +      } +    }); +    $("#group-1").droppable("destroy"); +    $("#group-2").droppable("destroy"); +    $(".g-group-disable").droppable("destroy"); +  }); + +  var reload_group = function(group_id) { +    var reload_group_url = "<?= url::site("admin/users/group/__GROUPID__") ?>"; +    $.get(reload_group_url.replace("__GROUPID__", group_id), +          {}, +          function(data) { +            $("#group-" + group_id).html(data); +            $("#group-" + group_id + " .g-dialog-link").gallery_dialog(); +          }); +  } + +  var remove_user = function(user_id, group_id) { +    var remove_user_url = "<?= url::site("admin/users/remove_user_from_group/__USERID__/__GROUPID__?csrf=$csrf") ?>"; +    $.get(remove_user_url.replace("__USERID__", user_id).replace("__GROUPID__", group_id), +          {}, +          function() { +            reload_group(group_id); +          }); +  } +</script> +<div class="g-block"> +  <? if (!empty($writable)): ?> +  <a href="<?= url::site("admin/users/add_user_form") ?>" +      class="g-dialog-link g-button g-right ui-icon-left ui-state-default ui-corner-all" +      title="<?= t("Create a new user")->for_html_attr() ?>"> +    <span class="ui-icon ui-icon-circle-plus"></span> +    <?= t("Add a new user") ?> +  </a> +  <? endif ?> + +  <h2> +    <?= t("User Admin") ?> +  </h2> + +  <div class="g-block-content"> +    <table id="g-user-admin-list"> +      <tr> +        <th><?= t("Username") ?></th> +        <th><?= t("Full name") ?></th> +        <th><?= t("Email") ?></th> +        <th><?= t("Last login") ?></th> +        <th><?= t("Actions") ?></th> +      </tr> + +      <? foreach ($users as $i => $user): ?> +      <tr id="g-user-<?= $user->id ?>" class="<?= text::alternate("g-odd", "g-even") ?> user <?= $user->admin ? "admin" : "" ?>"> +        <td id="user-<?= $user->id ?>" class="core-info <?= !empty($writable) ? "g-draggable" : "" ?> "> +          <img src="<?= $user->avatar_url(20, $theme->url("images/avatar.jpg", true)) ?>" +               title="<?= t("Drag user onto group below to add as a new member")->for_html_attr() ?>" +               alt="<?= html::clean_attribute($user->name) ?>" +               width="20" +               height="20" /> +          <?= html::clean($user->name) ?> +        </td> +        <td> +          <?= html::clean($user->full_name) ?> +        </td> +        <td> +          <?= html::clean($user->email) ?> +        </td> +        <td> +          <?= ($user->last_login == 0) ? "" : gallery::date($user->last_login) ?> +        </td> +        <td class="g-actions"> +          <a href="<?= url::site("admin/users/edit_user_form/$user->id") ?>" +              open_text="<?= t("close") ?>" +              class="g-panel-link g-button ui-state-default ui-corner-all ui-icon-left"> +            <span class="ui-icon ui-icon-pencil"></span><span class="g-button-text"> +              <?= (!empty($writable)) ? t("edit") : t("display") ?> +            </span></a> +          <? if (!empty($writable)): ?> +            <? if (user::active()->id != $user->id && !$user->guest): ?> +            <a href="<?= url::site("admin/users/delete_user_form/$user->id") ?>" +                class="g-dialog-link g-button ui-state-default ui-corner-all ui-icon-left"> +              <span class="ui-icon ui-icon-trash"></span><?= t("delete") ?></a> +            <? else: ?> +            <span title="<?= t("This user cannot be deleted")->for_html_attr() ?>" +                class="g-button ui-state-disabled ui-corner-all ui-icon-left"> +              <span class="ui-icon ui-icon-trash"></span><?= t("delete") ?></span> +            <? endif ?> +          <? endif ?> +        </td> +      </tr> +      <? endforeach ?> +    </table> +  </div> +</div> + +<div id="g-group-admin" class="g-block g-clearfix"> +  <? if (!empty($writable)): ?> +  <a href="<?= url::site("admin/users/add_group_form") ?>" +      class="g-dialog-link g-button g-right ui-icon-left ui-state-default ui-corner-all" +      title="<?= t("Create a new group")->for_html_attr() ?>"> +    <span class="ui-icon ui-icon-circle-plus"></span> +    <?= t("Add a new group") ?> +  </a> +  <? endif ?> + +  <h2> +    <?= t("Group Admin") ?> +  </h2> + +  <div class="g-block-content"> +    <ul> +      <? foreach ($groups as $i => $group): ?> +      <? $class = !empty($writable) ? "" : "g-group-disable" ?> +      <li id="group-<?= $group->id ?>" class="g-group <?= $class ?> <?= ($group->special ? "g-default-group" : "") ?>" /> +        <? $v = new View("admin_users_group.html"); $v->group = $group; $v->writable = !empty($writable) ?> +        <?= $v ?> +      </li> +      <? endforeach ?> +    </ul> +  </div> +</div> diff --git a/modules/gallery/views/admin_users_group.html.php b/modules/gallery/views/admin_users_group.html.php new file mode 100644 index 00000000..539f69b7 --- /dev/null +++ b/modules/gallery/views/admin_users_group.html.php @@ -0,0 +1,38 @@ +<?php defined("SYSPATH") or die("No direct script access.") ?> +<h4> +  <?= html::clean($group->name) ?> +  <? if (!$group->special): ?> +  <a href="<?= url::site("admin/users/delete_group_form/$group->id") ?>" +    title="<?= t("Delete the %name group", array("name" => $group->name))->for_html_attr() ?>" +    class="g-dialog-link g-button ui-state-default ui-corner-all <?= !empty($writable) ? "" : "ui-state-disabled"  ?>"> +    <span class="ui-icon ui-icon-trash"><?= t("delete") ?></span></a> +  <? else: ?> +  <a title="<?= t("This default group cannot be deleted")->for_html_attr() ?>" +     class="g-dialog-link g-button ui-state-disabled ui-corner-all ui-icon-left"> +    <span class="ui-icon ui-icon-trash"><?= t("delete") ?></span></a> +  <? endif ?> +</h4> + +<? if ($group->users->count() > 0): ?> +<ul> +  <? foreach ($group->users as $i => $user): ?> +  <li class="g-user"> +    <?= html::clean($user->name) ?> +    <? if (!$group->special): ?> +    <a href="javascript:remove_user(<?= $user->id ?>, <?= $group->id ?>)" +       class="g-button ui-state-default ui-corner-all ui-icon-left <?= !empty($writable) ? "" : "ui-state-disabled"  ?>" +       title="<?= t("Remove %user from %group group", +              array("user" => $user->name, "group" => $group->name))->for_html_attr() ?>"> +      <span class="ui-icon ui-icon-closethick"><?= t("remove") ?></span> +    </a> +    <? endif ?> +  </li> +  <? endforeach ?> +</ul> +<? else: ?> +<div> +  <p> +    <?= t("Drag & drop users from the User Admin above into this group box to add group members.") ?> +  </p> +</div> +<? endif ?> diff --git a/modules/gallery/views/login.html.php b/modules/gallery/views/login.html.php new file mode 100644 index 00000000..fa6308ae --- /dev/null +++ b/modules/gallery/views/login.html.php @@ -0,0 +1,22 @@ +<?php defined("SYSPATH") or die("No direct script access.") ?> +<ul id="g-login-menu"> +  <? if ($user->guest): ?> +  <li class="first"> +    <a href="<?= url::site("login/ajax") ?>" +       title="<?= t("Login to Gallery")->for_html_attr() ?>" +       id="g-login-link"><?= t("Login") ?></a> +  </li> +  <? else: ?> +  <li class="first"> +    <?= t('Logged in as %name', array('name' => html::mark_clean( +      '<a href="' . url::site("form/edit/users/{$user->id}") . +      '" title="' . ($writable ? t("Edit Your Profile")->for_html_attr() : t("Display Your Profile")->for_html_attr()) . +      '" id="g-user-profile-link" class="g-dialog-link">' . +      html::clean($user->display_name()) . '</a>'))) ?> +  </li> +  <li> +    <a href="<?= url::site("logout?csrf=$csrf&continue=" . urlencode(url::current(true))) ?>" +       id="g-logout-link"><?= t("Logout") ?></a> +  </li> +  <? endif ?> +</ul> diff --git a/modules/gallery/views/login_ajax.html.php b/modules/gallery/views/login_ajax.html.php new file mode 100644 index 00000000..332a5365 --- /dev/null +++ b/modules/gallery/views/login_ajax.html.php @@ -0,0 +1,45 @@ +<?php defined("SYSPATH") or die("No direct script access.") ?> +<script type="text/javascript"> +  $("#g-login-form").ready(function() { +    $("#g-password-reset").click(function() { +      $.ajax({ +        url: "<?= url::site("password/reset") ?>", +        success: function(data) { +          $("#g-login").html(data); +          $("#ui-dialog-title-g-dialog").html(<?= t("Reset Password")->for_js() ?>); +          $(".submit").addClass("g-button ui-state-default ui-corner-all"); +          $(".submit").gallery_hover_init(); +          ajaxify_login_reset_form(); +        } +      }); +    }); +  }); + +  function ajaxify_login_reset_form() { +    $("#g-login form").ajaxForm({ +      dataType: "json", +      success: function(data) { +        if (data.form) { +          $("#g-login form").replaceWith(data.form); +          ajaxify_login_reset_form(); +        } +        if (data.result == "success") { +          $("#g-dialog").dialog("close"); +          window.location.reload(); +        } +      } +    }); +  }; +</script> +<div id="g-login"> +  <ul> +    <li id="g-login-form"> +      <?= $form ?> +    </li> +    <? if (!empty($writable)): ?> +    <li> +      <a href="#" id="g-password-reset" class="g-right g-txt-small"><?= t("Forgot Your Password?") ?></a> +    </li> +    <? endif ?> +  </ul> +</div> diff --git a/modules/gallery/views/reset_password.html.php b/modules/gallery/views/reset_password.html.php new file mode 100644 index 00000000..92ca4917 --- /dev/null +++ b/modules/gallery/views/reset_password.html.php @@ -0,0 +1,17 @@ +<?php defined("SYSPATH") or die("No direct script access.") ?> +<html> +  <head> +    <title><?= t("Password Reset Request") ?> </title> +  </head> +  <body> +    <h2><?= t("Password Reset Request") ?> </h2> +    <p> +      <?= t("Hello, %name,", array("name" => $user->full_name ? $user->full_name : $user->name)) ?> +    </p> +    <p> +  <?= t("We received a request to reset your password for <a href=\"%site_url\">%site_url</a>.  If you made this request, you can confirm it by <a href=\"%confirm_url\">clicking this link</a>.  If you didn't request this password reset, it's ok to ignore this mail.", +        array("site_url" => html::mark_clean(url::base(false, "http")), +              "confirm_url" => $confirm_url)) ?> +    </p> +  </body> +</html> diff --git a/modules/gallery/views/user_languages_block.html.php b/modules/gallery/views/user_languages_block.html.php new file mode 100644 index 00000000..89185967 --- /dev/null +++ b/modules/gallery/views/user_languages_block.html.php @@ -0,0 +1,19 @@ +<?php defined("SYSPATH") or die("No direct script access.") ?> +<?= form::dropdown("g-select-session-locale", $installed_locales, $selected) ?> +<script type="text/javascript"> +  $("#g-select-session-locale").change(function() { +    var old_locale_preference = <?= html::js_string($selected) ?>; +    var locale = $(this).val(); +    if (old_locale_preference == locale) { +      return; +    } + +    var expires = -1; +    if (locale) { +      expires = 365; +    } +    $.cookie("g_locale", locale, {"expires": expires, "path": "/"}); +    window.location.reload(true); +  }); +</script> +  | 
