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> + |