mirror of
https://github.com/axeloz/filesharing.git
synced 2025-05-06 10:03:55 +02:00
New theme - better look&feel
This commit is contained in:
parent
5835c4a735
commit
7583c3f1a6
14 changed files with 10298 additions and 24721 deletions
29
.env.example
29
.env.example
|
@ -6,33 +6,6 @@ APP_LOG_LEVEL=debug
|
|||
APP_URL=http://localhost
|
||||
TIMEZONE=Europe/London
|
||||
LOCALE=en
|
||||
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=homestead
|
||||
DB_USERNAME=homestead
|
||||
DB_PASSWORD=secret
|
||||
|
||||
STORAGE_PATH=.
|
||||
UPLOAD_MAX_FILESIZE=50M
|
||||
|
||||
BROADCAST_DRIVER=log
|
||||
CACHE_DRIVER=file
|
||||
SESSION_DRIVER=file
|
||||
QUEUE_DRIVER=sync
|
||||
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
MAIL_DRIVER=smtp
|
||||
MAIL_HOST=smtp.mailtrap.io
|
||||
MAIL_PORT=2525
|
||||
MAIL_USERNAME=null
|
||||
MAIL_PASSWORD=null
|
||||
MAIL_ENCRYPTION=null
|
||||
|
||||
PUSHER_APP_ID=
|
||||
PUSHER_APP_KEY=
|
||||
PUSHER_APP_SECRET=
|
||||
UPLOAD_LIMIT_IPS=
|
||||
|
|
|
@ -10,7 +10,6 @@ class WebController extends Controller
|
|||
{
|
||||
function homepage(Request $request)
|
||||
{
|
||||
|
||||
if (Upload::canUpload($request->ip()) !== true) {
|
||||
return view('cannotupload', [
|
||||
'u' => $request->get('u')
|
||||
|
|
18969
package-lock.json
generated
18969
package-lock.json
generated
File diff suppressed because it is too large
Load diff
49
package.json
49
package.json
|
@ -1,21 +1,32 @@
|
|||
{
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "npm run development",
|
||||
"development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
|
||||
"watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
|
||||
"watch-poll": "npm run watch -- --watch-poll",
|
||||
"hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
|
||||
"prod": "npm run production",
|
||||
"production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"laravel-mix": "^5.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"clipboard": "^1.7.1",
|
||||
"cross-env": "^3.2.3",
|
||||
"dropzone": "^5.1.1",
|
||||
"jquery": "^3.2.1"
|
||||
}
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "npm run development",
|
||||
"development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
|
||||
"watch": "npm run development -- --watch",
|
||||
"watch-poll": "npm run watch -- --watch-poll",
|
||||
"hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
|
||||
"prod": "npm run production",
|
||||
"production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"axios": "^0.19",
|
||||
"bootstrap": "^4.1.0",
|
||||
"cross-env": "^5.1",
|
||||
"jquery": "^3.2",
|
||||
"laravel-mix": "^4.0.7",
|
||||
"lodash": "^4.17.13",
|
||||
"popper.js": "^1.12",
|
||||
"resolve-url-loader": "^2.3.1",
|
||||
"sass": "^1.15.2",
|
||||
"sass-loader": "^7.1.0",
|
||||
"vue": "^2.5.17",
|
||||
"vue-template-compiler": "^2.6.10"
|
||||
},
|
||||
"dependencies": {
|
||||
"clipboard": "^1.7.1",
|
||||
"cross-env": "^3.2.3",
|
||||
"dropzone": "^5.1.1",
|
||||
"jquery": "^3.2.1"
|
||||
}
|
||||
}
|
||||
|
|
105
public/css/app.css
vendored
105
public/css/app.css
vendored
File diff suppressed because one or more lines are too long
BIN
public/img/background.jpg
Normal file
BIN
public/img/background.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 5 MiB |
139
public/js/app.js
vendored
139
public/js/app.js
vendored
File diff suppressed because one or more lines are too long
147
public/js/manifest.js
vendored
147
public/js/manifest.js
vendored
|
@ -1,14 +1,18 @@
|
|||
/******/ (function(modules) { // webpackBootstrap
|
||||
/******/ // install a JSONP callback for chunk loading
|
||||
/******/ var parentJsonpFunction = window["webpackJsonp"];
|
||||
/******/ window["webpackJsonp"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {
|
||||
/******/ function webpackJsonpCallback(data) {
|
||||
/******/ var chunkIds = data[0];
|
||||
/******/ var moreModules = data[1];
|
||||
/******/ var executeModules = data[2];
|
||||
/******/
|
||||
/******/ // add "moreModules" to the modules object,
|
||||
/******/ // then flag all "chunkIds" as loaded and fire callback
|
||||
/******/ var moduleId, chunkId, i = 0, resolves = [], result;
|
||||
/******/ var moduleId, chunkId, i = 0, resolves = [];
|
||||
/******/ for(;i < chunkIds.length; i++) {
|
||||
/******/ chunkId = chunkIds[i];
|
||||
/******/ if(installedChunks[chunkId])
|
||||
/******/ if(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {
|
||||
/******/ resolves.push(installedChunks[chunkId][0]);
|
||||
/******/ }
|
||||
/******/ installedChunks[chunkId] = 0;
|
||||
/******/ }
|
||||
/******/ for(moduleId in moreModules) {
|
||||
|
@ -16,32 +20,55 @@
|
|||
/******/ modules[moduleId] = moreModules[moduleId];
|
||||
/******/ }
|
||||
/******/ }
|
||||
/******/ if(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);
|
||||
/******/ while(resolves.length)
|
||||
/******/ if(parentJsonpFunction) parentJsonpFunction(data);
|
||||
/******/
|
||||
/******/ while(resolves.length) {
|
||||
/******/ resolves.shift()();
|
||||
/******/ if(executeModules) {
|
||||
/******/ for(i=0; i < executeModules.length; i++) {
|
||||
/******/ result = __webpack_require__(__webpack_require__.s = executeModules[i]);
|
||||
/******/ }
|
||||
/******/
|
||||
/******/ // add entry modules from loaded chunk to deferred list
|
||||
/******/ deferredModules.push.apply(deferredModules, executeModules || []);
|
||||
/******/
|
||||
/******/ // run deferred modules when all chunks ready
|
||||
/******/ return checkDeferredModules();
|
||||
/******/ };
|
||||
/******/ function checkDeferredModules() {
|
||||
/******/ var result;
|
||||
/******/ for(var i = 0; i < deferredModules.length; i++) {
|
||||
/******/ var deferredModule = deferredModules[i];
|
||||
/******/ var fulfilled = true;
|
||||
/******/ for(var j = 1; j < deferredModule.length; j++) {
|
||||
/******/ var depId = deferredModule[j];
|
||||
/******/ if(installedChunks[depId] !== 0) fulfilled = false;
|
||||
/******/ }
|
||||
/******/ if(fulfilled) {
|
||||
/******/ deferredModules.splice(i--, 1);
|
||||
/******/ result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
|
||||
/******/ }
|
||||
/******/ }
|
||||
/******/
|
||||
/******/ return result;
|
||||
/******/ };
|
||||
/******/ }
|
||||
/******/
|
||||
/******/ // The module cache
|
||||
/******/ var installedModules = {};
|
||||
/******/
|
||||
/******/ // objects to store loaded and loading chunks
|
||||
/******/ // object to store loaded and loading chunks
|
||||
/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
|
||||
/******/ // Promise = chunk loading, 0 = chunk loaded
|
||||
/******/ var installedChunks = {
|
||||
/******/ 2: 0
|
||||
/******/ "/js/manifest": 0
|
||||
/******/ };
|
||||
/******/
|
||||
/******/ var deferredModules = [];
|
||||
/******/
|
||||
/******/ // The require function
|
||||
/******/ function __webpack_require__(moduleId) {
|
||||
/******/
|
||||
/******/ // Check if module is in cache
|
||||
/******/ if(installedModules[moduleId])
|
||||
/******/ if(installedModules[moduleId]) {
|
||||
/******/ return installedModules[moduleId].exports;
|
||||
/******/
|
||||
/******/ }
|
||||
/******/ // Create a new module (and put it into the cache)
|
||||
/******/ var module = installedModules[moduleId] = {
|
||||
/******/ i: moduleId,
|
||||
|
@ -59,51 +86,6 @@
|
|||
/******/ return module.exports;
|
||||
/******/ }
|
||||
/******/
|
||||
/******/ // This file contains only the entry chunk.
|
||||
/******/ // The chunk loading function for additional chunks
|
||||
/******/ __webpack_require__.e = function requireEnsure(chunkId) {
|
||||
/******/ if(installedChunks[chunkId] === 0)
|
||||
/******/ return Promise.resolve();
|
||||
/******/
|
||||
/******/ // a Promise means "currently loading".
|
||||
/******/ if(installedChunks[chunkId]) {
|
||||
/******/ return installedChunks[chunkId][2];
|
||||
/******/ }
|
||||
/******/
|
||||
/******/ // setup Promise in chunk cache
|
||||
/******/ var promise = new Promise(function(resolve, reject) {
|
||||
/******/ installedChunks[chunkId] = [resolve, reject];
|
||||
/******/ });
|
||||
/******/ installedChunks[chunkId][2] = promise;
|
||||
/******/
|
||||
/******/ // start chunk loading
|
||||
/******/ var head = document.getElementsByTagName('head')[0];
|
||||
/******/ var script = document.createElement('script');
|
||||
/******/ script.type = 'text/javascript';
|
||||
/******/ script.charset = 'utf-8';
|
||||
/******/ script.async = true;
|
||||
/******/ script.timeout = 120000;
|
||||
/******/
|
||||
/******/ if (__webpack_require__.nc) {
|
||||
/******/ script.setAttribute("nonce", __webpack_require__.nc);
|
||||
/******/ }
|
||||
/******/ script.src = __webpack_require__.p + "js/" + ({"0":"/js/vendor","1":"/js/app"}[chunkId]||chunkId) + ".js";
|
||||
/******/ var timeout = setTimeout(onScriptComplete, 120000);
|
||||
/******/ script.onerror = script.onload = onScriptComplete;
|
||||
/******/ function onScriptComplete() {
|
||||
/******/ // avoid mem leaks in IE.
|
||||
/******/ script.onerror = script.onload = null;
|
||||
/******/ clearTimeout(timeout);
|
||||
/******/ var chunk = installedChunks[chunkId];
|
||||
/******/ if(chunk !== 0) {
|
||||
/******/ if(chunk) chunk[1](new Error('Loading chunk ' + chunkId + ' failed.'));
|
||||
/******/ installedChunks[chunkId] = undefined;
|
||||
/******/ }
|
||||
/******/ };
|
||||
/******/ head.appendChild(script);
|
||||
/******/
|
||||
/******/ return promise;
|
||||
/******/ };
|
||||
/******/
|
||||
/******/ // expose the modules object (__webpack_modules__)
|
||||
/******/ __webpack_require__.m = modules;
|
||||
|
@ -111,20 +93,37 @@
|
|||
/******/ // expose the module cache
|
||||
/******/ __webpack_require__.c = installedModules;
|
||||
/******/
|
||||
/******/ // identity function for calling harmony imports with the correct context
|
||||
/******/ __webpack_require__.i = function(value) { return value; };
|
||||
/******/
|
||||
/******/ // define getter function for harmony exports
|
||||
/******/ __webpack_require__.d = function(exports, name, getter) {
|
||||
/******/ if(!__webpack_require__.o(exports, name)) {
|
||||
/******/ Object.defineProperty(exports, name, {
|
||||
/******/ configurable: false,
|
||||
/******/ enumerable: true,
|
||||
/******/ get: getter
|
||||
/******/ });
|
||||
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
||||
/******/ }
|
||||
/******/ };
|
||||
/******/
|
||||
/******/ // define __esModule on exports
|
||||
/******/ __webpack_require__.r = function(exports) {
|
||||
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
||||
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
||||
/******/ }
|
||||
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
||||
/******/ };
|
||||
/******/
|
||||
/******/ // create a fake namespace object
|
||||
/******/ // mode & 1: value is a module id, require it
|
||||
/******/ // mode & 2: merge all properties of value into the ns
|
||||
/******/ // mode & 4: return value when already ns object
|
||||
/******/ // mode & 8|1: behave like require
|
||||
/******/ __webpack_require__.t = function(value, mode) {
|
||||
/******/ if(mode & 1) value = __webpack_require__(value);
|
||||
/******/ if(mode & 8) return value;
|
||||
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
||||
/******/ var ns = Object.create(null);
|
||||
/******/ __webpack_require__.r(ns);
|
||||
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
||||
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
||||
/******/ return ns;
|
||||
/******/ };
|
||||
/******/
|
||||
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
||||
/******/ __webpack_require__.n = function(module) {
|
||||
/******/ var getter = module && module.__esModule ?
|
||||
|
@ -138,10 +137,18 @@
|
|||
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
||||
/******/
|
||||
/******/ // __webpack_public_path__
|
||||
/******/ __webpack_require__.p = "";
|
||||
/******/ __webpack_require__.p = "/";
|
||||
/******/
|
||||
/******/ // on error function for async loading
|
||||
/******/ __webpack_require__.oe = function(err) { console.error(err); throw err; };
|
||||
/******/ var jsonpArray = window["webpackJsonp"] = window["webpackJsonp"] || [];
|
||||
/******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
|
||||
/******/ jsonpArray.push = webpackJsonpCallback;
|
||||
/******/ jsonpArray = jsonpArray.slice();
|
||||
/******/ for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
|
||||
/******/ var parentJsonpFunction = oldJsonpFunction;
|
||||
/******/
|
||||
/******/
|
||||
/******/ // run deferred modules from other chunks
|
||||
/******/ checkDeferredModules();
|
||||
/******/ })
|
||||
/************************************************************************/
|
||||
/******/ ([]);
|
15097
public/js/vendor.js
vendored
15097
public/js/vendor.js
vendored
File diff suppressed because one or more lines are too long
|
@ -1,7 +1,6 @@
|
|||
{
|
||||
"/js/app.js": "/js/app.js",
|
||||
"/css/app.css": "/css/app.css",
|
||||
"/js/vendor.js": "/js/vendor.js",
|
||||
"/js/manifest.js": "/js/manifest.js",
|
||||
"/js/app.min.js": "/js/app.min.js"
|
||||
}
|
||||
"/js/app.js": "/js/app.js",
|
||||
"/css/app.css": "/css/app.css",
|
||||
"/js/manifest.js": "/js/manifest.js",
|
||||
"/js/vendor.js": "/js/vendor.js"
|
||||
}
|
||||
|
|
457
resources/themes/default/assets/sass/app.scss
vendored
457
resources/themes/default/assets/sass/app.scss
vendored
|
@ -1,270 +1,279 @@
|
|||
@import url('https://fonts.googleapis.com/css?family=Indie+Flower|Quicksand');
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background-image: url('/img/background.jpg');
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
color: #FFF !important;
|
||||
font-size: 14px;
|
||||
min-height: 100vh;
|
||||
font-family: 'Quicksand', sans-serif;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
div#content {
|
||||
max-width: 800px;
|
||||
margin: 20px auto;
|
||||
padding: 10px 10px 10px 10px;
|
||||
color: #f1f1f1;
|
||||
background:
|
||||
radial-gradient(#292929 15%, transparent 16%) 0 0,
|
||||
radial-gradient(#292929 15%, transparent 16%) 8px 8px,
|
||||
radial-gradient(rgba(255, 255, 255, 0) 15%, transparent 20%) 0 1px,
|
||||
radial-gradient(rgba(255, 255, 255, 0.1) 15%, transparent 20%) 8px 9px;
|
||||
background-color: #3a3a3a;
|
||||
background-size:16px 16px;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
|
||||
}
|
||||
|
||||
h1 {
|
||||
|
||||
}
|
||||
|
||||
.spacer {
|
||||
clear: both;
|
||||
line-height: 0;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
a, a:visited {
|
||||
color: #58bfe4;
|
||||
}
|
||||
|
||||
label {
|
||||
display: block;
|
||||
width: 100%;
|
||||
margin: 10px 0 5px 0;
|
||||
|
||||
&:first-child {
|
||||
margin: 0 0 5px 0;
|
||||
#content {
|
||||
max-width: 500px;
|
||||
width: 500px;
|
||||
margin: 20px auto;
|
||||
padding: 10px 10px 10px 10px;
|
||||
background-size:16px 16px;
|
||||
font-size: 1rem;
|
||||
background-color:rgba(56, 76, 65, 0.84);
|
||||
border: 1px solid rgb(69, 87, 77);
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
-ms-transform: translateX(-50%) translateY(-50%);
|
||||
-webkit-transform: translate(-50%,-50%);
|
||||
transform: translate(-50%,-50%);
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
margin: 10px 0 0 0;
|
||||
h1 {
|
||||
margin-bottom: 5px;
|
||||
text-transform: uppercase;
|
||||
font-size: 3rem;
|
||||
}
|
||||
}
|
||||
|
||||
body#upload {
|
||||
h2 {
|
||||
margin-top: 0;
|
||||
color: rgba(255, 255, 255, 0.877);
|
||||
text-transform: uppercase;
|
||||
font-size: 1.7rem;
|
||||
}
|
||||
|
||||
div#upload-column {
|
||||
float: left;
|
||||
width: 190px;
|
||||
.spacer {
|
||||
clear: both;
|
||||
line-height: 0;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
form.dropzone {
|
||||
margin: 0;
|
||||
cursor: pointer;
|
||||
border: 1px dashed #a1bdf4;
|
||||
text-align: center;
|
||||
min-height: 170px;
|
||||
max-height: 170px;
|
||||
color: #eaeaea;
|
||||
background-color:rgba(64, 154, 189, 0.33);
|
||||
background-size:16px 16px;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
height: 100%;
|
||||
white-space: nowrap;
|
||||
position: relative;
|
||||
a, a:visited {
|
||||
color: #58bfe4;
|
||||
}
|
||||
|
||||
&:before {
|
||||
content: '';
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
width: 0;
|
||||
margin-right: -.25em;
|
||||
label {
|
||||
display: block;
|
||||
width: 100%;
|
||||
margin: 10px 0 5px 0;
|
||||
|
||||
&:first-child {
|
||||
margin: 0 0 5px 0;
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
margin: 10px 0 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
&#upload {
|
||||
|
||||
div#upload-column {
|
||||
float: left;
|
||||
width: 190px;
|
||||
|
||||
|
||||
form.dropzone {
|
||||
margin: 0;
|
||||
cursor: pointer;
|
||||
|
||||
background:
|
||||
linear-gradient(45deg, #33453b 45px, transparent 45px)64px 64px,
|
||||
linear-gradient(45deg, #33453b 45px, transparent 45px,transparent 91px, #41574b 91px, #41574b 135px, transparent 135px),
|
||||
linear-gradient(-45deg, #33453b 23px, transparent 23px, transparent 68px,#33453b 68px,#33453b 113px,transparent 113px,transparent 158px,#33453b 158px);
|
||||
background-color:#41574b;
|
||||
background-size: 128px 128px;
|
||||
|
||||
text-align: center;
|
||||
min-height: 170px;
|
||||
max-height: 170px;
|
||||
height: 100%;
|
||||
white-space: nowrap;
|
||||
position: relative;
|
||||
|
||||
&:before {
|
||||
content: '';
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
width: 0;
|
||||
margin-right: -.25em;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
&.dz-drag-hover {
|
||||
background-color:rgba(64, 154, 189, 0.66);
|
||||
}
|
||||
|
||||
.dz-message {
|
||||
font-family: 'Indie Flower', cursive;
|
||||
font-size: 1.3rem;
|
||||
margin: 35px 15px;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
white-space: normal;
|
||||
padding: 0 1em;
|
||||
}
|
||||
}
|
||||
|
||||
&.dz-drag-hover {
|
||||
background-color:rgba(64, 154, 189, 0.66);
|
||||
.max-filesize-warning {
|
||||
font-family: 'Quicksand', sans-serif;
|
||||
padding: 0;
|
||||
margin: 2px 0 0 0;
|
||||
font-size: .8rem;
|
||||
position: absolute;
|
||||
bottom: .5rem;
|
||||
right: .5rem;
|
||||
}
|
||||
|
||||
.dz-message {
|
||||
font-family: 'Indie Flower', cursive;
|
||||
font-size: 18px;
|
||||
margin: 35px 15px;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
white-space: normal;
|
||||
padding: 0 1em;
|
||||
&.wide {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.max-filesize-warning {
|
||||
font-family: 'Quicksand', sans-serif;
|
||||
padding: 0;
|
||||
margin: 2px 0 0 0;
|
||||
font-size: 9px;
|
||||
position: absolute;
|
||||
bottom: 3px;
|
||||
right: 3px;
|
||||
}
|
||||
|
||||
&.wide {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
div#settings-column {
|
||||
float: right;
|
||||
max-width: 590px;
|
||||
width: 590px;
|
||||
display: none;
|
||||
|
||||
p.link {
|
||||
max-width: 80%;
|
||||
width: 80%;
|
||||
background-color: #CCC;
|
||||
white-space: nowrap;
|
||||
padding: 6px;
|
||||
background-color: #545454;
|
||||
margin: 0;
|
||||
overflow: hidden;
|
||||
display: inline-flex;
|
||||
}
|
||||
|
||||
.clippy {
|
||||
background-image: url(/img/clippy.svg);
|
||||
background-size: 15px;
|
||||
background-repeat: no-repeat;
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
color: #FFF;
|
||||
height: 28px;
|
||||
width: 20px;
|
||||
background-position: center center;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
div#files-list {
|
||||
display: none;
|
||||
margin: 20px 0 0 0;
|
||||
font-size: 12px;
|
||||
padding: 5px 0;
|
||||
position: relative;
|
||||
|
||||
.preview-tpl {
|
||||
div#settings-column {
|
||||
float: right;
|
||||
max-width: 280px;
|
||||
width: 280px;
|
||||
display: none;
|
||||
padding-left: 1rem;
|
||||
|
||||
p.link {
|
||||
max-width: 80%;
|
||||
width: 80%;
|
||||
background-color: #CCC;
|
||||
white-space: nowrap;
|
||||
padding: 6px;
|
||||
background-color: #545454;
|
||||
margin: 0;
|
||||
overflow: hidden;
|
||||
display: inline-flex;
|
||||
}
|
||||
|
||||
.clippy {
|
||||
background-image: url(/img/clippy.svg);
|
||||
background-size: 15px;
|
||||
background-repeat: no-repeat;
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
height: 28px;
|
||||
width: 20px;
|
||||
background-position: center center;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
.file-row {
|
||||
padding: 10px 0px 10px 6px;
|
||||
border-top: 1px solid #5a5a5a;
|
||||
div#files-list {
|
||||
display: none;
|
||||
margin: 20px 0 0 0;
|
||||
font-size: 12px;
|
||||
padding: 5px 0;
|
||||
position: relative;
|
||||
|
||||
.dz-filename {
|
||||
width: 60%;
|
||||
overflow: hidden;
|
||||
float: left;
|
||||
position: relative;
|
||||
.preview-tpl {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.dz-size {
|
||||
width: 10%;
|
||||
overflow: hidden;
|
||||
float: right;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.dz-progress {
|
||||
width: 12%;
|
||||
overflow: hidden;
|
||||
float: right;
|
||||
min-height: 8px;
|
||||
margin: 3px 10px 0 5px;
|
||||
.file-row {
|
||||
padding: 10px 0px 10px 6px;
|
||||
border-top: 1px solid #5a5a5a;
|
||||
position: relative;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
background-color: #eaeaea;
|
||||
|
||||
.dz-upload {
|
||||
.dz-filename {
|
||||
width: 60%;
|
||||
overflow: hidden;
|
||||
float: left;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.dz-size {
|
||||
width: 10%;
|
||||
overflow: hidden;
|
||||
float: right;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.dz-progress {
|
||||
width: 12%;
|
||||
overflow: hidden;
|
||||
float: right;
|
||||
min-height: 8px;
|
||||
margin: 3px 10px 0 5px;
|
||||
position: relative;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
background-color: #eaeaea;
|
||||
|
||||
.dz-upload {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 0;
|
||||
background-color: #51acd0;
|
||||
}
|
||||
}
|
||||
|
||||
.dz-error-message {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 0;
|
||||
background-color: #51acd0;
|
||||
top: 10px;
|
||||
right: 100px;
|
||||
background-color: red;
|
||||
padding: 0 8px;
|
||||
}
|
||||
}
|
||||
|
||||
.dz-error-message {
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
right: 100px;
|
||||
background-color: red;
|
||||
padding: 0 8px;
|
||||
}
|
||||
|
||||
.dz-result {
|
||||
width: 5%;
|
||||
float: right;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
&.dz-success {
|
||||
.dz-result {
|
||||
background-image: url('/img/success.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
width: 5%;
|
||||
float: right;
|
||||
margin-left: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
&.dz-error {
|
||||
.dz-result {
|
||||
background-image: url('/img/error.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
&.dz-success {
|
||||
.dz-result {
|
||||
background-image: url('/img/success.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
}
|
||||
|
||||
&.dz-error {
|
||||
.dz-result {
|
||||
background-image: url('/img/error.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
body#download {
|
||||
#files-list {
|
||||
font-size: 12px;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.expiry-warning {
|
||||
font-size: 11px;
|
||||
font-style: italic;
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.download-all-btn {
|
||||
margin: 0 auto;
|
||||
width: 60%;
|
||||
text-align: center;
|
||||
font-size: 22px;
|
||||
background-color: #54606d;
|
||||
-webkit-border-radius: 10px;
|
||||
-moz-border-radius: 10px;
|
||||
border-radius: 10px;
|
||||
padding: 10px 5px;
|
||||
box-shadow: inset 0px 1px 0px 0px #cae3fc;
|
||||
|
||||
&a, &a:visited {
|
||||
color: #FFF;
|
||||
&#download {
|
||||
#files-list {
|
||||
font-size: 1rem;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
&:hover {}
|
||||
|
||||
.bundle-info {
|
||||
font-size: 12px;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
.expiry-warning {
|
||||
font-size: .8rem;
|
||||
font-style: italic;
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.download-all-btn {
|
||||
margin: 0 auto;
|
||||
width: 60%;
|
||||
text-align: center;
|
||||
font-size: 1.4rem;
|
||||
background-color: #3a5142;
|
||||
padding: 10px 5px;
|
||||
box-shadow: inset 0px 1px 0px 0px #cae3fc;
|
||||
|
||||
&a, &a:visited {
|
||||
color: #FFF;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Files Sharing</title>
|
||||
<title>{{ config('app.name') }}</title>
|
||||
<link rel="stylesheet" href="{{ mix('/css/app.css') }}">
|
||||
<script src="{{ mix('/js/manifest.js') }}" type="text/javascript"></script>
|
||||
<script src="{{ mix('/js/vendor.js') }}" type="text/javascript"></script>
|
||||
<script src="{{ mix('/js/app.js') }}" type="text/javascript"></script>
|
||||
</head>
|
||||
|
||||
<body id="@yield('page')">
|
||||
<body class="main" id="@yield('page')">
|
||||
|
||||
@include('header')
|
||||
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
@section('page', 'upload')
|
||||
|
||||
@section('content')
|
||||
<h1>@lang('app.upload-files-title')</h1>
|
||||
<h1>{{ config('app.name') }}</h1>
|
||||
<h2>@lang('app.upload-files-title')</h2>
|
||||
|
||||
<div id="upload-column" class="wide">
|
||||
<form action="{{ route('upload.store') }}" class="dropzone" id="upload-form">
|
||||
|
|
8
webpack.mix.js
vendored
8
webpack.mix.js
vendored
|
@ -1,4 +1,4 @@
|
|||
const { mix } = require('laravel-mix');
|
||||
const mix = require('laravel-mix');
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
@ -11,8 +11,9 @@ const { mix } = require('laravel-mix');
|
|||
|
|
||||
*/
|
||||
|
||||
mix.js('resources/themes/' + process.env.MIX_THEME + '/assets/js/app.js', 'public/js')
|
||||
.sass('resources/themes/' + process.env.MIX_THEME + '/assets/sass/app.scss', 'public/css')
|
||||
mix
|
||||
.js('resources/themes/default/assets/js/app.js', 'public/js')
|
||||
.sass('resources/themes/default/assets/sass/app.scss', 'public/css')
|
||||
.extract(['jquery', 'dropzone', 'clipboard'])
|
||||
|
||||
if (mix.inProduction()) {
|
||||
|
@ -20,5 +21,4 @@ if (mix.inProduction()) {
|
|||
}
|
||||
else {
|
||||
mix.sourceMaps();
|
||||
mix.browserSync('filesharing.local');
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue