Răsfoiți Sursa

config user settings in slider (#5094)

maTh 3 ani în urmă
părinte
comite
96dfecc875
3 a modificat fișierele cu 24 adăugiri și 7 ștergeri
  1. 3 6
      app/views/user/details.phtml
  2. 18 1
      app/views/user/manage.phtml
  3. 3 0
      p/scripts/extra.js

+ 3 - 6
app/views/user/details.phtml

@@ -1,16 +1,13 @@
 <?php
 	/** @var FreshRSS_View $this */
-	$this->partial('aside_configure');
 ?>
 
 <?php $isDefault = $this->details['is_default']; ?>
 <?php $isAdmin = $this->details['is_admin']; ?>
 <?php $enabled = $this->details['enabled']; ?>
 
-<main class="post">
-	<a href="<?= _url('user', 'manage'); ?>"><?= _t('admin.user.back_to_manage'); ?></a>
-
-	<h1><?= $this->username ?><?php if ($isAdmin) echo ' ― ', _t('admin.user.admin'); ?></h1>
+<div class="post">
+	<h2><?= $this->username ?><?php if ($isAdmin) echo ' ― ', _t('admin.user.admin'); ?></h2>
 	<form method="post" action="<?= _url('user', 'manage', 'username', $this->username); ?>">
 		<input type="hidden" name="_csrf" value="<?= FreshRSS_Auth::csrfToken(); ?>" />
 
@@ -87,4 +84,4 @@
 			<div>
 		</div>
 	</form>
-</main>
+</div>

+ 18 - 1
app/views/user/manage.phtml

@@ -95,6 +95,7 @@
 		<table id="user-list">
 			<thead>
 				<tr>
+					<th></th>
 					<th><?= _t('admin.user.username') ?></th>
 					<th><?= _t('admin.user.enabled') ?></th>
 					<th><?= _t('admin.user.is_admin') ?></th>
@@ -109,7 +110,8 @@
 			<tbody>
 				<?php foreach ($this->users as $username => $values) : ?>
 					<tr <?= $values['is_default'] ? 'class="default-user"' : '' ?>>
-						<td><a href="<?= _url('user', 'details', 'username', $username) ?>"><?= $username ?></a></td>
+						<td><a href="<?= _url('user', 'details', 'username', $username) ?>" class="configure open-slider" ><?= _i('configure') ?></a></td>
+						<td><?= $username ?></td>
 						<td><?= $values['enabled'] ? '✔' : ' ' ?></td>
 						<td><?= $values['is_admin'] ? '✔' : ' ' ?></td>
 						<td><?= $values['mail_login'] ?></td>
@@ -124,3 +126,18 @@
 		</table>
 	</div>
 </main>
+
+<?php $class = ($this->query != null) ? ' active' : ''; ?>
+<aside id="slider" class="<?= $class ?>">
+<a class="toggle_aside" href="#close"><img class="icon" src="../themes/icons/close.svg" loading="lazy" alt="❌"></a>
+	<div id="slider-content">
+		<?php
+			if ($this->query != null) {
+				$this->renderHelper('configure/query');
+			}
+		?>
+	</div>
+</aside>
+<a href="#" id="close-slider">
+	<?= _i('close') ?>
+</a>

+ 3 - 0
p/scripts/extra.js

@@ -291,6 +291,9 @@ function init_extra_afterDOM() {
 
 		const slider = document.getElementById('slider');
 		if (slider) {
+			slider.addEventListener('freshrss:slider-load', function (e) {
+				init_password_observers(slider);
+			});
 			init_slider(slider);
 			init_archiving(slider);
 			init_url_observers(slider);