浏览代码

Removed useless templates
Reorganized css/js in pages

Sergio Brighenti 6 年之前
父节点
当前提交
a825b74a0d

+ 3 - 1
app/Controllers/UserController.php

@@ -114,6 +114,7 @@ class UserController extends Controller
 		}
 
 		return $this->view->render($response, 'user/edit.twig', [
+			'profile' => false,
 			'user' => $user
 		]);
 	}
@@ -226,7 +227,8 @@ class UserController extends Controller
 			throw new UnauthorizedException();
 		}
 
-		return $this->view->render($response, 'user/profile.twig', [
+		return $this->view->render($response, 'user/edit.twig', [
+			'profile' => true,
 			'user' => $user
 		]);
 	}

+ 1 - 1
app/routes.php

@@ -16,7 +16,7 @@ $app->group('', function () {
 	})->add(\App\Middleware\AdminMiddleware::class);
 
 	$this->get('/profile', \App\Controllers\UserController::class . ':profile');
-	$this->post('/profile/{id}/edit', \App\Controllers\UserController::class . ':profileEdit');
+	$this->post('/profile/{id}', \App\Controllers\UserController::class . ':profileEdit');
 	$this->post('/user/{id}/refreshToken', \App\Controllers\UserController::class . ':refreshToken');
 	$this->get('/user/{id}/config/sharex', \App\Controllers\UserController::class . ':getShareXconfigFile');
 

+ 0 - 8
install/templates/alert.twig

@@ -1,8 +0,0 @@
-{% for type, message in alerts %}
-    <div class="alert alert-{{ type }} alert-dismissible fade show" role="alert">
-        {{ message }}
-        <button type="button" class="close" data-dismiss="alert" aria-label="Close">
-            <span aria-hidden="true">&times;</span>
-        </button>
-    </div>
-{% endfor %}

+ 0 - 7
install/templates/footer.twig

@@ -1,7 +0,0 @@
-<footer class="footer">
-    <div class="container-fluid">
-        <div class="text-muted">Proudly powered by
-            <a href="https://github.com/SergiX44/XBackBone">XBackBone v{{ PLATFORM_VERSION }}</a>
-        </div>
-    </div>
-</footer>

+ 0 - 2
install/templates/install.twig

@@ -40,7 +40,6 @@
 </head>
 <body>
 <div class="container">
-    {% include 'alert.twig' %}
     <div class="row justify-content-center">
         <div class="col-md-8">
             <div class="card mt-3">
@@ -150,6 +149,5 @@
         });
     })
 </script>
-{% include 'footer.twig' %}
 </body>
 </html>

+ 0 - 36
resources/templates/auth/login.twig

@@ -4,11 +4,6 @@
 
 {% block head %}
     <style>
-        html,
-        body {
-            height: 100%;
-        }
-
         body {
             display: -ms-flexbox;
             display: -webkit-box;
@@ -23,37 +18,6 @@
             background-color: #f5f5f5;
             margin-bottom: 0;
         }
-
-        .form-signin {
-            width: 100%;
-            max-width: 330px;
-            padding: 15px;
-            margin: 0 auto;
-        }
-
-        .form-signin .form-control {
-            position: relative;
-            box-sizing: border-box;
-            height: auto;
-            padding: 10px;
-            font-size: 16px;
-        }
-
-        .form-signin .form-control:focus {
-            z-index: 2;
-        }
-
-        .form-signin input[type="text"] {
-            margin-bottom: -1px;
-            border-bottom-right-radius: 0;
-            border-bottom-left-radius: 0;
-        }
-
-        .form-signin input[type="password"] {
-            margin-bottom: 10px;
-            border-top-left-radius: 0;
-            border-top-right-radius: 0;
-        }
     </style>
 {% endblock %}
 

+ 1 - 1
resources/templates/dashboard/system.twig

@@ -1,6 +1,6 @@
 {% extends 'base.twig' %}
 
-{% block title %}System Info{% endblock %}
+{% block title %}System{% endblock %}
 
 {% block content %}
 

+ 4 - 7
resources/templates/upload/public.twig

@@ -12,8 +12,10 @@
             <div class="collapse navbar-collapse" id="navbarCollapse">
                 <div class="ml-auto">
                     <a href="javascript:void(0)" class="btn btn-success my-2 my-sm-0 btn-clipboard" data-toggle="tooltip" title="Copy link" data-clipboard-text="{{ config.base_url }}/{{ media.user_code }}/{{ media.code }}.{{ extension }}"><i class="fas fa-link fa-lg fa-fw"></i></a>
-                    <a href="javascript:void(0)" class="btn btn-info my-2 my-sm-0" data-html="true" title="Telegram Message" data-toggle="popover" data-placement="bottom" data-content='<input type="text" class="form-control mb-2" id="telegram-share-text" onclick="this.select()" value="{{ media.filename }}">
-<button type="button" class="btn btn-info btn-block" id="telegram-share-button" onclick="telegramShare()" data-url="https://telegram.me/share/url?url={{ config.base_url }}/{{ media.user_code }}/{{ media.code }}.{{ extension }}&text="><i class="fab fa-telegram-plane fa-lg fa-fw"></i> Send</button>'><i class="fab fa-telegram-plane fa-lg fa-fw"></i></a>
+                    <a href="javascript:void(0)" class="btn btn-info my-2 my-sm-0" data-html="true" title="Telegram Message" data-toggle="popover" data-placement="bottom"
+                       data-content='<input type="text" class="form-control mb-2" id="telegram-share-text" onclick="this.select()" value="{{ media.filename }}">
+<button type="button" class="btn btn-info btn-block" id="telegram-share-button" onclick="app.telegramShare()" data-url="https://telegram.me/share/url?url={{ config.base_url }}/{{ media.user_code }}/{{ media.code }}.{{ extension }}&text="><i class="fab fa-telegram-plane fa-lg fa-fw"></i> Send</button>'><i
+                                class="fab fa-telegram-plane fa-lg fa-fw"></i></a>
                     <a href="{{ config.base_url }}/{{ media.user_code }}/{{ media.code }}.{{ extension }}/raw" class="btn btn-light my-2 my-sm-0" data-toggle="tooltip" title="Show raw"><i class="fas fa-file-alt fa-lg fa-fw"></i></a>
                     <a href="{{ config.base_url }}/{{ media.user_code }}/{{ media.code }}.{{ extension }}/download" class="btn btn-danger my-2 my-sm-0" data-toggle="tooltip" title="Download"><i class="fas fa-cloud-download-alt fa-lg fa-fw"></i></a>
                 </div>
@@ -75,10 +77,5 @@
             </div>
         </div>
     </div>
-    <script>
-        function telegramShare() {
-            $("<a>").attr("href", $('#telegram-share-button').data('url') + $('#telegram-share-text').val()).attr("target", "_blank")[0].click();
-        }
-    </script>
     {% include 'comp/footer.twig' %}
 {% endblock %}

+ 31 - 23
resources/templates/user/edit.twig

@@ -1,6 +1,6 @@
 {% extends 'base.twig' %}
 
-{% block title %}Edit User{% endblock %}
+{% block title %}{{ profile ? 'Your Profile' : 'Edit User' }}{% endblock %}
 
 {% block content %}
     {% include 'comp/navbar.twig' %}
@@ -10,9 +10,11 @@
         <div class="row justify-content-center">
             <div class="col-md-8">
                 <div class="card">
-                    <div class="card-header">Edit User</div>
+                    {% if not profile %}
+                        <div class="card-header">Edit User</div>
+                    {% endif %}
                     <div class="card-body">
-                        <form method="post" action="{{ config.base_url }}/user/{{ user.id }}">
+                        <form method="post" action="{{ config.base_url }}/{{ profile ? 'profile' : 'user' }}/{{ user.id }}">
                             <div class="form-group row">
                                 <label for="email" class="col-sm-2 col-form-label">Email</label>
                                 <div class="col-sm-10">
@@ -20,9 +22,13 @@
                                 </div>
                             </div>
                             <div class="form-group row">
-                                <label for="email" class="col-sm-2 col-form-label">Username</label>
+                                <label for="username" class="col-sm-2 col-form-label">Username</label>
                                 <div class="col-sm-10">
-                                    <input type="text" class="form-control" id="username" placeholder="Username" name="username" value="{{ user.username }}" autocomplete="off" required>
+                                    {% if profile %}
+                                        <input type="text" class="form-control disabled" id="username" value="{{ user.username }}" readonly>
+                                    {% else %}
+                                        <input type="text" class="form-control" id="username" placeholder="Username" name="username" value="{{ user.username }}" autocomplete="off" required>
+                                    {% endif %}
                                 </div>
                             </div>
                             <div class="form-group row">
@@ -49,28 +55,30 @@
                                     <a href="{{ config.base_url }}/user/{{ user.id }}/config/sharex" class="btn btn-lg btn-outline-dark"><i class="fas fa-fw fa-download"></i> ShareX Config File</a>
                                 </div>
                             </div>
-                            <div class="form-group row">
-                                <div class="col-sm-2"></div>
-                                <div class="col-sm-10">
-                                    <div class="form-check">
-                                        <input class="form-check-input" type="checkbox" id="is_admin" name="is_admin" {{ user.is_admin ? 'checked' }}>
-                                        <label class="form-check-label" for="is_admin">
-                                            Is admin
-                                        </label>
+                            {% if not profile %}
+                                <div class="form-group row">
+                                    <div class="col-sm-2"></div>
+                                    <div class="col-sm-10">
+                                        <div class="form-check">
+                                            <input class="form-check-input" type="checkbox" id="is_admin" name="is_admin" {{ user.is_admin ? 'checked' }}>
+                                            <label class="form-check-label" for="is_admin">
+                                                Is admin
+                                            </label>
+                                        </div>
                                     </div>
                                 </div>
-                            </div>
-                            <div class="form-group row">
-                                <div class="col-sm-2"></div>
-                                <div class="col-sm-10">
-                                    <div class="form-check">
-                                        <input class="form-check-input" type="checkbox" id="is_active" name="is_active" {{ user.active ? 'checked' }}>
-                                        <label class="form-check-label" for="is_active">
-                                            Is active
-                                        </label>
+                                <div class="form-group row">
+                                    <div class="col-sm-2"></div>
+                                    <div class="col-sm-10">
+                                        <div class="form-check">
+                                            <input class="form-check-input" type="checkbox" id="is_active" name="is_active" {{ user.active ? 'checked' }}>
+                                            <label class="form-check-label" for="is_active">
+                                                Is active
+                                            </label>
+                                        </div>
                                     </div>
                                 </div>
-                            </div>
+                            {% endif %}
                             <div class="form-group row justify-content-md-end">
                                 <div class="col-sm-10">
                                     <button type="submit" class="btn btn-outline-info">

+ 0 - 65
resources/templates/user/profile.twig

@@ -1,65 +0,0 @@
-{% extends 'base.twig' %}
-
-{% block title %}Your Profile{% endblock %}
-
-{% block content %}
-    {% include 'comp/navbar.twig' %}
-
-    <div class="container">
-        {% include 'comp/alert.twig' %}
-        <div class="row justify-content-center">
-            <div class="col-md-8">
-                <div class="card">
-                    <div class="card-body">
-                        <form method="post" action="{{ config.base_url }}/profile/{{ user.id }}/edit">
-                            <div class="form-group row">
-                                <label for="email" class="col-sm-2 col-form-label">Email</label>
-                                <div class="col-sm-10">
-                                    <input type="email" class="form-control" id="email" placeholder="email@example.com" name="email" value="{{ user.email }}" autocomplete="off" required>
-                                </div>
-                            </div>
-                            <div class="form-group row">
-                                <label for="email" class="col-sm-2 col-form-label">Username</label>
-                                <div class="col-sm-10">
-                                    <input type="text" class="form-control disabled" id="username" value="{{ user.username }}" readonly>
-                                </div>
-                            </div>
-                            <div class="form-group row">
-                                <label for="password" class="col-sm-2 col-form-label">Password</label>
-                                <div class="col-sm-10">
-                                    <input type="password" class="form-control" id="password" placeholder="Password" name="password" autocomplete="off">
-                                </div>
-                            </div>
-                            <div class="form-group row">
-                                <label for="token" class="col-sm-2 col-form-label">Token</label>
-                                <div class="col-sm-10">
-                                    <div class="input-group">
-                                        <input type="text" id="token" class="form-control" value="{{ user.token }}" readonly>
-                                        <div class="input-group-append">
-                                            <button class="btn btn-outline-success btn-clipboard" type="button" data-clipboard-target="#token"><i class="fas fa-fw fa-copy"></i> Copy</button>
-                                            <button class="btn btn-outline-primary refresh-token" data-id="{{ user.id }}" type="button"><i class="fas fa-fw fa-sync"></i> Update</button>
-                                        </div>
-                                    </div>
-                                </div>
-                            </div>
-                            <div class="form-group row">
-                                <label class="col-sm-2 col-form-label">Client Config</label>
-                                <div class="col-sm-10">
-                                    <a href="{{ config.base_url }}/user/{{ user.id }}/config/sharex" class="btn btn-lg btn-outline-dark"><i class="fas fa-fw fa-download"></i> ShareX Config File</a>
-                                </div>
-                            </div>
-                            <div class="form-group row justify-content-md-end">
-                                <div class="col-sm-10">
-                                    <button type="submit" class="btn btn-outline-info">
-                                        <i class="fas fa-save fa-fw"></i> Save
-                                    </button>
-                                </div>
-                            </div>
-                        </form>
-                    </div>
-                </div>
-            </div>
-        </div>
-    </div>
-    {% include 'comp/footer.twig' %}
-{% endblock %}

+ 33 - 1
src/css/app.css

@@ -1,14 +1,46 @@
 
 html {
     position: relative;
-    min-height: 100%;
+    height: 100%;
 }
 
 body {
+    height: 100%;
     margin-bottom: 40px;
     font-size: 1rem;
 }
 
+.form-signin {
+    width: 100%;
+    max-width: 330px;
+    padding: 15px;
+    margin: 0 auto;
+}
+
+.form-signin .form-control {
+    position: relative;
+    box-sizing: border-box;
+    height: auto;
+    padding: 10px;
+    font-size: 16px;
+}
+
+.form-signin .form-control:focus {
+    z-index: 2;
+}
+
+.form-signin input[type="text"] {
+    margin-bottom: -1px;
+    border-bottom-right-radius: 0;
+    border-bottom-left-radius: 0;
+}
+
+.form-signin input[type="password"] {
+    margin-bottom: 10px;
+    border-top-left-radius: 0;
+    border-top-right-radius: 0;
+}
+
 .box-shadow {
     box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
 }

+ 3 - 0
src/js/app.js

@@ -80,6 +80,9 @@ var app = {
             $('#themes-apply').prop('disabled', false);
         });
         $themes.unbind('mousedown');
+    },
+    telegramShare: function () {
+        $("<a>").attr("href", $('#telegram-share-button').data('url') + $('#telegram-share-text').val()).attr("target", "_blank")[0].click();
     }
 };