summaryrefslogtreecommitdiff
path: root/modules/user/views
diff options
context:
space:
mode:
Diffstat (limited to 'modules/user/views')
-rw-r--r--modules/user/views/admin_users.html.php142
-rw-r--r--modules/user/views/admin_users_delete_user.html.php7
-rw-r--r--modules/user/views/admin_users_group.html.php40
-rw-r--r--modules/user/views/reset_password.html.php18
4 files changed, 207 insertions, 0 deletions
diff --git a/modules/user/views/admin_users.html.php b/modules/user/views/admin_users.html.php
new file mode 100644
index 0000000..033c9da
--- /dev/null
+++ b/modules/user/views/admin_users.html.php
@@ -0,0 +1,142 @@
+<?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-core-info").draggable({
+ helper: "clone"
+ });
+ $("#g-group-admin .g-group").droppable({
+ accept: ".g-core-info",
+ hoverClass: "g-selected",
+ drop: function(ev, ui) {
+ var user_id = $(ui.draggable).attr("id").replace("g-user-", "");
+ var group_id = $(this).attr("id").replace("g-group-", "");
+ $.get(add_user_to_group_url.replace("__USERID__", user_id).replace("__GROUPID__", group_id),
+ {},
+ function() {
+ reload_group(group_id);
+ });
+ }
+ });
+ $("#g-group-1").droppable("destroy");
+ $("#g-group-2").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) {
+ $("#g-group-" + group_id).html(data);
+ $("#g-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">
+ <h1> <?= t("Users and groups") ?> </h1>
+
+ <div class="g-block-content">
+
+ <div id="g-user-admin" class="g-block">
+ <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>
+
+ <h2> <?= t("Users") ?> </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("Albums/Photos") ?></th>
+ <th><?= t("Actions") ?></th>
+ </tr>
+
+ <? foreach ($users as $i => $user): ?>
+ <tr id="g-user-<?= $user->id ?>" class="<?= text::alternate("g-odd", "g-even") ?> g-user <?= $user->admin ? "g-admin" : "" ?>">
+ <td id="g-user-<?= $user->id ?>" class="g-core-info g-draggable">
+ <img src="<?= $user->avatar_url(20, $theme->url("images/avatar.jpg", true)) ?>"
+ title="<?= t("Drag user onto a group 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>
+ <?= db::build()->from("items")->where("owner_id", "=", $user->id)->count_records() ?>
+ </td>
+ <td>
+ <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"><?= t("Edit") ?></span></a>
+ <? if (identity::active_user()->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 ?>
+ </td>
+ </tr>
+ <? endforeach ?>
+ </table>
+
+ <div class="g-paginator">
+ <?= $theme->paginator() ?>
+ </div>
+
+ </div>
+ </div>
+
+ <div id="g-group-admin" class="g-block ui-helper-clearfix">
+ <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>
+
+ <h2> <?= t("Groups") ?> </h2>
+
+ <div class="g-block-content">
+ <ul>
+ <? foreach ($groups as $i => $group): ?>
+ <li id="g-group-<?= $group->id ?>" class="g-group g-left <?= ($group->special ? "g-default-group" : "") ?>">
+ <? $v = new View("admin_users_group.html"); $v->group = $group; ?>
+ <?= $v ?>
+ </li>
+ <? endforeach ?>
+ </ul>
+ </div>
+ </div>
+
+ </div>
+</div>
diff --git a/modules/user/views/admin_users_delete_user.html.php b/modules/user/views/admin_users_delete_user.html.php
new file mode 100644
index 0000000..44777ae
--- /dev/null
+++ b/modules/user/views/admin_users_delete_user.html.php
@@ -0,0 +1,7 @@
+<?php defined("SYSPATH") or die("No direct script access.") ?>
+<div id="g-admin-users-delete-user">
+ <p>
+ <?= t("Really delete <b>%name</b>? Any photos, movies or albums owned by this user will transfer ownership to <b>%new_owner</b>.", array("name" => $user->display_name(), "new_owner" => identity::active_user()->display_name())) ?>
+ </p>
+ <?= $form ?>
+</div>
diff --git a/modules/user/views/admin_users_group.html.php b/modules/user/views/admin_users_group.html.php
new file mode 100644
index 0000000..31b9135
--- /dev/null
+++ b/modules/user/views/admin_users_group.html.php
@@ -0,0 +1,40 @@
+<?php defined("SYSPATH") or die("No direct script access.") ?>
+<h4>
+ <a href="<?= url::site("admin/users/edit_group_form/$group->id") ?>"
+ title="<?= t("Edit the %name group's name", array("name" => $group->name))->for_html_attr() ?>"
+ class="g-dialog-link"><?= html::clean($group->name) ?></a>
+ <? 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 g-right">
+ <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-button g-right ui-state-disabled ui-icon-left">
+ <span class="ui-icon ui-icon-trash"><?= t("Delete") ?></span></a>
+ <? endif ?>
+</h4>
+
+<? if ($group->users->count_all() > 0): ?>
+<ul class="g-member-list">
+ <? foreach ($group->users->order_by("name", "ASC")->find_all() 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 g-right ui-state-default ui-corner-all ui-icon-left"
+ 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 class="ui-state-disabled">
+ <?= t("Drag &amp; drop users from the \"Users\" list onto this group to add group members.") ?>
+ </p>
+</div>
+<? endif ?>
diff --git a/modules/user/views/reset_password.html.php b/modules/user/views/reset_password.html.php
new file mode 100644
index 0000000..d939ad4
--- /dev/null
+++ b/modules/user/views/reset_password.html.php
@@ -0,0 +1,18 @@
+<?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\">%base_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::abs_site("/")),
+ "base_url" => html::mark_clean(url::base(false)),
+ "confirm_url" => $confirm_url)) ?>
+ </p>
+ </body>
+</html>