From d9afd9b2b539d0e93a3980c9dce4a003095fe440 Mon Sep 17 00:00:00 2001
From: Andrew Dolgov <fox@madoka.volgo-balt.ru>
Date: Tue, 11 Jun 2013 12:11:02 +0400
Subject: [PATCH] use dojo stuff for user details

---
 classes/pref/users.php |  4 ++--
 css/prefs.css          | 13 ++-----------
 js/prefs.js            | 25 +++++++++++++++----------
 3 files changed, 19 insertions(+), 23 deletions(-)

diff --git a/classes/pref/users.php b/classes/pref/users.php
index aac0e89e5..09a88be50 100644
--- a/classes/pref/users.php
+++ b/classes/pref/users.php
@@ -12,7 +12,7 @@ class Pref_Users extends Handler_Protected {
 		}
 
 		function csrf_ignore($method) {
-			$csrf_ignored = array("index", "edit");
+			$csrf_ignored = array("index", "edit", "userdetails");
 
 			return array_search($method, $csrf_ignored) !== false;
 		}
@@ -92,7 +92,7 @@ class Pref_Users extends Handler_Protected {
 			print "</ul>";
 
 			print "<div align='center'>
-				<button onclick=\"closeInfoBox()\">".__("Close this window").
+				<button dojoType=\"dijit.form.Button\" type=\"submit\">".__("Close this window").
 				"</button></div>";
 
 			return;
diff --git a/css/prefs.css b/css/prefs.css
index 17edd500c..1cc8b7b03 100644
--- a/css/prefs.css
+++ b/css/prefs.css
@@ -62,7 +62,7 @@ div.filterTestHolder, div.prefFeedOPMLHolder {
 	border-width : 1px;
 }
 
-ul.selfUpdateList {
+ul.selfUpdateList, ul.userFeedList {
 	height : 200px;
 	overflow : auto;
 	list-style-type : none;
@@ -71,6 +71,7 @@ ul.selfUpdateList {
 	margin : 0px 0px 5px 0px;
 	padding : 5px;
 	box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1);
+	border-radius : 4px;
 }
 
 div#feedlistLoading, div#filterlistLoading, div#labellistLoading {
@@ -97,16 +98,6 @@ table.prefPluginsList td label, table.prefUserList td {
 	cursor : pointer;
 }
 
-ul.userFeedList {
-	height : 300px;
-	overflow : auto;
-	list-style-type : none;
-	border : 1px solid #555;
-	background-color : white;
-	margin : 0px 0px 5px 0px;
-	padding : 0px;
-}
-
 table.prefErrorLog tr.errrow td {
 	font-size : 10px;
 }
diff --git a/js/prefs.js b/js/prefs.js
index b4d55269b..287804c6f 100644
--- a/js/prefs.js
+++ b/js/prefs.js
@@ -83,8 +83,6 @@ function addUser() {
 function editUser(id, event) {
 
 	try {
-		notify_progress("Loading, please wait...");
-
 		var query = "backend.php?op=pref-users&method=edit&id=" +
 			param_escape(id);
 
@@ -555,17 +553,24 @@ function selectedUserDetails() {
 			return;
 		}
 
-		notify_progress("Loading, please wait...");
-
 		var id = rows[0];
 
-		var query = "?op=pref-users&method=userdetails&id=" + id;
+		var query = "backend.php?op=pref-users&method=userdetails&id=" + id;
+
+		if (dijit.byId("userDetailsDlg"))
+			dijit.byId("userDetailsDlg").destroyRecursive();
+
+		dialog = new dijit.Dialog({
+			id: "userDetailsDlg",
+			title: __("User details"),
+			style: "width: 600px",
+			execute: function() {
+				dialog.hide();
+			},
+			href: query});
+
+		dialog.show();
 
-		new Ajax.Request("backend.php",	{
-			parameters: query,
-			onComplete: function(transport) {
-					infobox_callback2(transport, __("User details"));
-				} });
 	} catch (e) {
 		exception_error("selectedUserDetails", e);
 	}
-- 
GitLab