Browse Source

Brand

master
Jack Foltz 2 years ago
parent
commit
0a69781891
26 changed files with 143 additions and 105 deletions
  1. +1
    -1
      CONTRIBUTING.md
  2. +4
    -4
      app/public/panel/controllers/KeyCtrl.js
  3. +1
    -1
      app/public/panel/shrimpa-panel.js
  4. +0
    -52
      app/public/shimapan/components/UploadComp.js
  5. +1
    -1
      app/public/shrimpa/components/LoginComp.js
  6. +1
    -1
      app/public/shrimpa/components/RegisterComp.js
  7. +55
    -0
      app/public/shrimpa/components/UploadComp.js
  8. +1
    -1
      app/public/shrimpa/shrimpa.js
  9. +2
    -2
      config/default.json
  10. +1
    -1
      config/dev.json
  11. +1
    -1
      config/test.json
  12. +47
    -19
      package-lock.json
  13. +4
    -3
      package.json
  14. +1
    -0
      public/css/form.min.css
  15. +1
    -0
      public/css/home.min.css
  16. +1
    -0
      public/css/index.min.css
  17. +1
    -0
      public/css/panel.min.css
  18. +10
    -8
      public/views/home.html
  19. +2
    -2
      public/views/login.html
  20. +3
    -3
      public/views/panel.html
  21. +2
    -2
      public/views/panel/keys.html
  22. +2
    -2
      public/views/register.html
  23. +0
    -0
      public/views/shrimpa/login-form.html
  24. +0
    -0
      public/views/shrimpa/register-form.html
  25. +0
    -0
      public/views/shrimpa/upload-form.html
  26. +1
    -1
      server.js

+ 1
- 1
CONTRIBUTING.md View File

@@ -1,6 +1,6 @@
# Contributing
### Objectives
Head over to the [projects page](https://github.com/Foltik/Shimapan/projects/). Here you'll find all the current
Head over to the [projects page](https://github.com/Foltik/shrimpa/projects/). Here you'll find all the current
and upcoming objectives of the current project. If you have any ideas or suggestions, add it to the relevant
column in the project page and create an issue to discuss.
### Finding Work


+ 4
- 4
app/public/panel/controllers/KeyCtrl.js View File

@@ -91,20 +91,20 @@ angular.module('KeyCtrl', ['KeySvc', 'AuthSvc']).controller('KeyController', ['$
'curl \\\n' +
' -F key=' + $scope.currKey.key + ' \\\n' +
' -F "file=@$1" \\\n' +
' https://shimapan.rocks/api/upload \\\n' +
' https://shrimpa.rocks/api/upload \\\n' +
' | grep -Po \'"\'"url"\'"\\s*:\\s*"\\K([^"]*)\'\n';
downloadData('text/x-shellscript', 'shimapan.rocks.sh', data);
downloadData('text/x-shellscript', 'shrimpa.rocks.sh', data);
};

$scope.downloadSharex = () => {
const data = {
RequestURL: 'https://shimapan.rocks/api/upload',
RequestURL: 'https://shrimpa.rocks/api/upload',
FileFormName: 'file',
Arguments: {
key: $scope.currKey.key
},
URL: '$json:url$'
};
downloadData('text/json', 'shimapan.rocks.sxcu', JSON.stringify(data));
downloadData('text/json', 'shrimpa.rocks.sxcu', JSON.stringify(data));
};
}]);

app/public/panel/shimapan-panel.js → app/public/panel/shrimpa-panel.js View File

@@ -1,7 +1,7 @@
var angular = require('angular');
var uirouter = require('angular-ui-router');
var chart = require('angular-chart.js');
var app = angular.module('shimapan-panel', ['ui.router', 'AuthSvc', 'KeySvc', 'InviteSvc', 'UserSvc', 'StatSvc', 'KeyCtrl', 'InviteCtrl', 'UserCtrl', 'NavCtrl', 'DashCtrl', 'PanelRoutes']);
var app = angular.module('shrimpa-panel', ['ui.router', 'AuthSvc', 'KeySvc', 'InviteSvc', 'UserSvc', 'StatSvc', 'KeyCtrl', 'InviteCtrl', 'UserCtrl', 'NavCtrl', 'DashCtrl', 'PanelRoutes']);

app.run(['$rootScope', '$state', '$stateParams', function($rootScope, $state, $stateParams) {
$rootScope.$state = $state;

+ 0
- 52
app/public/shimapan/components/UploadComp.js View File

@@ -1,52 +0,0 @@
var angular = require('angular');

angular.module('UploadComp', ['ngFileUpload', 'AuthSvc']).component('uploadComponent', {
templateUrl: '/views/shimapan/upload-form.html',
controller: ['$scope', 'Upload', '$timeout', function ($scope, Upload, $timeout) {
$scope.errToString = function (err) {
if (err === 'maxSize')
return "File too large.";
else
return err;
};

$scope.uploadFiles = function (files, errorFiles) {
$scope.files = $scope.files ? $scope.files.concat(files) : files;
$scope.errorFiles = $scope.errorFiles ? $scope.errorFiles.concat(errorFiles) : errorFiles;

angular.forEach(files, function (file) {
file.upload = Upload.upload({
url: '/api/upload',
method: 'POST',
file: file
});

file.upload.then(
function (response) {
$timeout(function () {
file.result = response.data;
});
},
function (response) {
if (response.status !== 200) {
if (response.status === 401) {
file.$error = "Unauthorized.";
} else if (response.status === 403) {
file.$error = "Forbidden.";
} else {
file.$error = "Unknown error " + response.status;
}
var index = $scope.files.indexOf(file);
$scope.errorFiles.push(file);
$scope.files.splice(index, 1);
}
},
function (evt) {
file.progress = Math.floor(Math.min(100.0, 100 * evt.loaded / evt.total));
}
);
});
};
}],
controllerAs: 'vm'
});

app/public/shimapan/components/LoginComp.js → app/public/shrimpa/components/LoginComp.js View File

@@ -23,4 +23,4 @@ angular.module('LoginComp', ['AuthSvc']).component('loginComponent', {
}
};
}]
});
});

app/public/shimapan/components/RegisterComp.js → app/public/shrimpa/components/RegisterComp.js View File

@@ -1,7 +1,7 @@
var angular = require('angular');

angular.module('RegisterComp', ['AuthSvc']).component('registerComponent', {
templateUrl: '/views/shimapan/register-form.html',
templateUrl: '/views/shrimpa/register-form.html',
controller: ['$scope', '$timeout', 'AuthService', function($scope, $timeout, AuthService) {
$scope.register = function() {
AuthService.register($scope.username, $scope.password, $scope.invite).catch(function() {

+ 55
- 0
app/public/shrimpa/components/UploadComp.js View File

@@ -0,0 +1,55 @@
var angular = require('angular');

angular.module('UploadComp', ['ngFileUpload', 'AuthSvc']).component('uploadComponent', {
templateUrl: '/views/shrimpa/upload-form.html',
controller: ['$scope', 'Upload', '$timeout', function ($scope, Upload, $timeout) {
$scope.errToString = function (err) {
if (err === 'maxSize')
return "File too large.";
else
return err;
};

$scope.uploadFiles = function (files, errorFiles) {
$scope.files = $scope.files ? $scope.files.concat(files) : files;
$scope.errorFiles = $scope.errorFiles ? $scope.errorFiles.concat(errorFiles) : errorFiles;

files.reduce((promise, file) => {
return promise.then(() => new Promise((resolve, reject) => {
file.upload = Upload.upload({
url: '/api/upload',
method: 'POST',
file: file
});

file.upload.then(
function (response) {
resolve();
$timeout(function () {
file.result = response.data;
});
},
function (response) {
if (response.status !== 200) {
if (response.status === 401) {
file.$error = "Unauthorized.";
} else if (response.status === 403) {
file.$error = "Forbidden.";
} else {
file.$error = "Unknown error " + response.status;
}
var index = $scope.files.indexOf(file);
$scope.errorFiles.push(file);
$scope.files.splice(index, 1);
}
},
function (evt) {
file.progress = Math.floor(Math.min(100.0, 100 * evt.loaded / evt.total));
}
);
}));
}, Promise.resolve());
};
}],
controllerAs: 'vm'
});

app/public/shimapan/shimapan.js → app/public/shrimpa/shrimpa.js View File

@@ -1,4 +1,4 @@
var angular = require('angular');
var ngFileUpload = require('ng-file-upload');
var ngclipboard = require('ngclipboard');
var app = angular.module('shimapan', ['ngFileUpload', 'ngclipboard', 'UploadComp', 'RegisterComp', 'LoginComp']);
var app = angular.module('shrimpa', ['ngFileUpload', 'ngclipboard', 'UploadComp', 'RegisterComp', 'LoginComp']);

+ 2
- 2
config/default.json View File

@@ -1,12 +1,12 @@
{
"Server": {
"port": 4433,
"hostname": "https://shimapan.rocks",
"hostname": "https://shrimpa.rocks",
"tls": true,
"trustProxy": []
},
"Database": {
"host": "mongodb://localhost:27017/shimapan"
"host": "mongodb://localhost:27017/shrimpa"
},
"Upload": {
"path": "uploads",


+ 1
- 1
config/dev.json View File

@@ -6,7 +6,7 @@
"trustProxy": []
},
"Database": {
"host": "mongodb://localhost:27017/shimapan-dev"
"host": "mongodb://localhost:27017/shrimpa-dev"
},
"Upload": {
"path": "uploads-dev"


+ 1
- 1
config/test.json View File

@@ -6,7 +6,7 @@
"trustProxy": []
},
"Database": {
"host": "mongodb://localhost:27017/shimapan-test"
"host": "mongodb://localhost:27017/shrimpa-test"
},
"Upload": {
"path": "uploads-test"


+ 47
- 19
package-lock.json View File

@@ -1,5 +1,5 @@
{
"name": "shimapan",
"name": "shrimpa",
"version": "1.0.0",
"lockfileVersion": 1,
"requires": true,
@@ -310,6 +310,7 @@
"resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
"integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
"dev": true,
"optional": true,
"requires": {
"kind-of": "^3.0.2",
"longest": "^1.0.1",
@@ -2574,7 +2575,7 @@
},
"duplexer": {
"version": "0.1.1",
"resolved": "http://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
"resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
"integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=",
"dev": true
},
@@ -3635,7 +3636,8 @@
},
"ansi-regex": {
"version": "2.1.1",
"bundled": true
"bundled": true,
"optional": true
},
"aproba": {
"version": "1.2.0",
@@ -3653,11 +3655,13 @@
},
"balanced-match": {
"version": "1.0.0",
"bundled": true
"bundled": true,
"optional": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -3670,15 +3674,18 @@
},
"code-point-at": {
"version": "1.1.0",
"bundled": true
"bundled": true,
"optional": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true
"bundled": true,
"optional": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true
"bundled": true,
"optional": true
},
"core-util-is": {
"version": "1.0.2",
@@ -3781,7 +3788,8 @@
},
"inherits": {
"version": "2.0.3",
"bundled": true
"bundled": true,
"optional": true
},
"ini": {
"version": "1.3.5",
@@ -3791,6 +3799,7 @@
"is-fullwidth-code-point": {
"version": "1.0.0",
"bundled": true,
"optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -3803,17 +3812,20 @@
"minimatch": {
"version": "3.0.4",
"bundled": true,
"optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
},
"minimist": {
"version": "0.0.8",
"bundled": true
"bundled": true,
"optional": true
},
"minipass": {
"version": "2.2.4",
"bundled": true,
"optional": true,
"requires": {
"safe-buffer": "^5.1.1",
"yallist": "^3.0.0"
@@ -3830,6 +3842,7 @@
"mkdirp": {
"version": "0.5.1",
"bundled": true,
"optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -3902,7 +3915,8 @@
},
"number-is-nan": {
"version": "1.0.1",
"bundled": true
"bundled": true,
"optional": true
},
"object-assign": {
"version": "4.1.1",
@@ -3912,6 +3926,7 @@
"once": {
"version": "1.4.0",
"bundled": true,
"optional": true,
"requires": {
"wrappy": "1"
}
@@ -3987,7 +4002,8 @@
},
"safe-buffer": {
"version": "5.1.1",
"bundled": true
"bundled": true,
"optional": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -4017,6 +4033,7 @@
"string-width": {
"version": "1.0.2",
"bundled": true,
"optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -4034,6 +4051,7 @@
"strip-ansi": {
"version": "3.0.1",
"bundled": true,
"optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -4072,11 +4090,13 @@
},
"wrappy": {
"version": "1.0.2",
"bundled": true
"bundled": true,
"optional": true
},
"yallist": {
"version": "3.0.2",
"bundled": true
"bundled": true,
"optional": true
}
}
},
@@ -6020,7 +6040,8 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz",
"integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=",
"dev": true
"dev": true,
"optional": true
},
"loose-envify": {
"version": "1.4.0",
@@ -6105,7 +6126,7 @@
},
"map-stream": {
"version": "0.1.0",
"resolved": "http://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz",
"resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz",
"integrity": "sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ=",
"dev": true
},
@@ -6903,6 +6924,11 @@
}
}
},
"natives": {
"version": "1.1.6",
"resolved": "https://registry.npmjs.org/natives/-/natives-1.1.6.tgz",
"integrity": "sha512-6+TDFewD4yxY14ptjKaS63GVdtKiES1pTPyxn9Jb0rBqPMZ7VcCiooEhPNsr+mqHtMGxa/5c/HhcC4uPEUw/nA=="
},
"negotiator": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",
@@ -10935,6 +10961,7 @@
"version": "0.1.4",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"kind-of": "^3.0.2",
"longest": "^1.0.1",
@@ -11877,7 +11904,8 @@
"longest": {
"version": "1.0.1",
"bundled": true,
"dev": true
"dev": true,
"optional": true
},
"lru-cache": {
"version": "4.1.3",
@@ -13445,7 +13473,7 @@
},
"pause-stream": {
"version": "0.0.11",
"resolved": "http://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz",
"resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz",
"integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=",
"dev": true,
"requires": {
@@ -14434,7 +14462,7 @@
},
"split": {
"version": "0.3.3",
"resolved": "http://registry.npmjs.org/split/-/split-0.3.3.tgz",
"resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz",
"integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=",
"dev": true,
"requires": {
@@ -14534,7 +14562,7 @@
},
"stream-combiner": {
"version": "0.0.4",
"resolved": "http://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz",
"resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz",
"integrity": "sha1-TV5DPBhSYd3mI8o/RMWGvPXErRQ=",
"dev": true,
"requires": {


+ 4
- 3
package.json View File

@@ -1,5 +1,5 @@
{
"name": "shimapan",
"name": "shrimpa",
"version": "1.0.0",
"dependencies": {
"angular": "^1.7.5",
@@ -31,7 +31,8 @@
"passport-local-mongoose": "^5.0.1",
"sanitizer": "^0.1.3",
"type-is": "^1.6.16",
"vinyl-source-stream": "^2.0.0"
"vinyl-source-stream": "^2.0.0",
"natives": "^1.1.6"
},
"description": "A simple file sharing website.",
"main": "index.js",
@@ -69,6 +70,6 @@
},
"repository": {
"type": "git",
"url": "https://github.com/Foltik/shimapan"
"url": "https://github.com/Foltik/shrimpa"
}
}

+ 1
- 0
public/css/form.min.css View File

@@ -0,0 +1 @@
body{background-color:#000;margin:0;color:#d3d3d3;font-family:Roboto,sans-serif}::-moz-focus-inner{border:0}.form{margin:50px auto;width:300px}.form h3{background-color:#000;border:2px solid #2a9fd6;border-radius:5px 5px 0 0;color:#eee;font-size:18px;padding:20px;margin:0;text-align:center;text-transform:uppercase}fieldset{border:2px solid #2a9fd6;border-top:none;margin:0;background:#000;border-radius:0 0 5px 5px;padding:20px;position:relative}fieldset:before{border-bottom:2px solid #2a9fd6;border-right:2px solid #2a9fd6;background-color:#000;content:"";width:8px;height:8px;left:50%;margin:-4px 0 0 -4px;position:absolute;top:0;transform:rotate(45deg) translateY(-2px)}.form input{display:block;font-size:14px;background:#000;color:#d3d3d3;border:1px solid #999;width:226px;padding:12px 12px;margin:auto auto 5px}button{background:#000;border:2px solid #2a9fd6;border-radius:4px;color:#d3d3d3;cursor:pointer;display:block;padding:10px 30px;margin:20px auto auto;transition:background .25s,border-color .25s}button:hover{background:#2a9fd6;color:#fff;text-decoration:none;outline:0}button.shake{background:#f66;border-color:#f66;color:#fff;animation:shake .82s cubic-bezier(.36,.07,.19,.97) both;transform:translate3d(0,0,0);backface-visibility:hidden;perspective:1000px}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}

+ 1
- 0
public/css/home.min.css View File

@@ -0,0 +1 @@
body{background-color:#060606;color:#d3d3d3;font-family:Roboto,sans-serif;font-size:14px;height:100%;line-height:20px;margin:0;padding-top:20px;padding-bottom:40px}#container{max-width:700px;text-align:center;display:flex;flex-direction:column;margin:auto}a{color:#0078b4;text-decoration:none;transition:color .25s}a:active,a:focus,a:hover{color:#005580}h1{font-size:72px;font-weight:700}.upload{margin:60px 0}.btn{font-family:Roboto,sans-serif;background:#000;border:2px solid #2a9fd6;border-radius:4px;color:#d3d3d3;cursor:pointer;display:inline-block;font-size:24px;padding:28px 48px;transition:background-color .25s,width .5s,height .5s}.btn:hover{background-color:#2a9fd6;color:#fff;text-decoration:none;outline:0}:focus{outline:0}::-moz-focus-inner{border:0}#upload-filelist{list-style-type:none;margin:20px 50px;padding:0;text-align:left}#upload-filelist>li{margin-top:5px;overflow:hidden;display:flex}.list-name{margin-top:6px;overflow:hidden;max-width:70%;text-overflow:ellipsis;white-space:nowrap}.list-url{font-family:'Roboto Mono',monospace;margin-left:auto}.list-progress{margin:10px 30px 10px 30px;flex-grow:2}.list-url a{vertical-align:super;color:#5c5c5c}.list-url a:hover{color:#d3d3d3}.list-url-clipboard-btn{border:2px solid #222;height:32px;margin-left:5px;border-radius:3px;cursor:pointer;background-color:#5c5c5c;transition:background-color .25s}.list-url-clipboard-btn:focus,.list-url-clipboard-btn:hover{background-color:#ababab;outline:0}.list-err{font-family:'Roboto Mono',monospace;margin-left:auto;color:#f66;vertical-align:super}nav a,nav>ul{color:#32809f;list-style:none;margin:0;padding:0;text-align:center}nav>ul>li{display:inline-block;margin:0;padding:0;cursor:default}nav>ul>li:after{content:"|";margin:0 8px;opacity:.3}nav>ul>li:last-child:after{content:"";margin:0}

+ 1
- 0
public/css/index.min.css View File

@@ -0,0 +1 @@
*{margin:0}body{background:#000}a{position:absolute;top:40px;left:48%;opacity:.1;height:30px;width:30px;z-index:100;cursor:default}a img{width:30px;height:30px}canvas{position:absolute;top:0;left:0}video{position:fixed;top:50%;left:50%;min-width:100%;min-height:100%;z-index:-100;transform:translateX(-50%) translateY(-50%);background-size:cover;transition:1s opacity}#buffer{display:none}

+ 1
- 0
public/css/panel.min.css View File

@@ -0,0 +1 @@
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://fonts.googleapis.com/css?family=Roboto);@import url(https://fonts.googleapis.com/css?family=Roboto+Mono);.sidebar-title{grid-row-start:1;grid-row-end:1;place-self:center;cursor:pointer;display:flex;justify-content:center;align-items:center;width:200px;height:60px}.sidebar-title span{color:#2a9fd6;font-size:20px;text-transform:uppercase;letter-spacing:6px}.sidebar{grid-row-start:2;grid-row-end:2}.nav li{cursor:pointer;display:flex;align-items:center}.nav li a{flex:1;outline:0;padding:20px 0 20px;margin-left:20px;font-size:14px;color:#666;text-decoration:none}.nav li span{background:#0d0d0d;width:35px;height:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-left:20px}.nav-icon{font:14px fontawesome;color:#fff}.nav li a:hover{color:#fff}.nav li a.active{color:#fff}::-moz-focus-inner{border:0}.dash-row{display:flex;flex-wrap:nowrap;align-items:center}.dash-card{background:#020202;border-radius:4px;padding:30px;margin:5px;flex-grow:1;display:flex;align-items:center;justify-content:center;border:1px solid #2a9fd6}#dash-singlestats{flex-grow:1}.dash-card.dash-card-singlestat{justify-content:space-between}.dash-stat{align-self:flex-start;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start}.dash-stat-title{font-size:18px}.dash-stat-value{font-size:48px}.dash-stat-icon{color:#2a9fd6}.dash-card.dash-card-graph{width:100px}.keys{display:flex;flex-direction:row;flex-wrap:wrap}.key{background:#000;border:3px solid #2a9fd6;border-radius:5px;box-shadow:5px 5px 10px #000;margin:20px;width:300px;height:100px;cursor:pointer;display:flex;justify-content:flex-start;flex-direction:row;transition:box-shadow .2s;overflow:hidden}.key:hover{box-shadow:0 0 10px #eee}.key i{font-size:48px;margin:auto 0 auto 20px}.key span{font-size:16px;vertical-align:center;margin:auto;-moz-user-select:none;user-select:none}.key-name{color:#2a9fd6;font-family:'Roboto Mono',monospace}pre{overflow:auto;line-height:1.7em;font-family:'Roboto Mono',monospace;border:1px solid #666;border-radius:4px;display:block;padding:10px;font-size:14px;margin:10px 0;background:#222;color:#2a9fd6}#createKey{max-width:920px}.btn-del{text-transform:uppercase;border:2px solid #f66;color:#ccc}.btn-del:hover{background-color:#f66}#identifier{font-size:14px;background:#222;color:#d3d3d3;border:1px solid #666;border-radius:4px;padding:10px;margin:10px 0}th{text-transform:uppercase;font-weight:700;padding:10px}td{padding:10px}td input{vertical-align:middle}td label{margin-bottom:2px;padding-left:3px}em{text-transform:uppercase;font-weight:700}*,:after,:before{margin:0;padding:0;box-sizing:border-box}body{font:12px Roboto,sans-serif;color:#eee;background:#020202}.container{display:grid;grid-template-columns:240px auto;grid-template-rows:60px auto;width:100vw;height:100vh}.view{grid-row-start:2;grid-column-start:2;background:#121212;padding:20px;border-left:1px solid #2a9fd6;border-top:1px solid #2a9fd6}.inner{display:flex;flex-direction:column}.modal,.modal-box{z-index:900}.modal-sandbox{position:fixed;width:100%;height:100%;top:0;left:0;background:0 0}.modal{display:none;position:fixed;width:100%;height:100%;left:0;top:0;background:#000;background:rgba(0,0,0,.8);overflow:auto}.modal-box{position:relative;width:80%;max-width:700px;margin:60px auto;animation-name:modalbox;animation-duration:.3s;animation-timing-function:ease}.modal-header{border:2px solid #2a9fd6;border-radius:8px 8px 0 0;display:flex;flex-direction:row;justify-content:space-between;padding:20px 40px;background:#000;color:#fff;overflow:hidden}.modal-body{border:2px solid #2a9fd6;border-top:none;background:#000;padding:30px}.modal-footer{display:flex;justify-content:flex-end;border:2px solid #2a9fd6;border-radius:0 0 8px 8px;border-top:none;background:#000;padding:20px}.close-modal{text-align:right;font-size:24px;cursor:pointer}@keyframes modalbox{0%{top:-250px;opacity:0}100%{top:0;opacity:1}}button{margin-left:20px;color:#d3d3d3;background:#000;border:2px solid #2a9fd6;border-radius:5px;padding:10px;cursor:pointer;transition:background-color .25s}button:hover{color:#fff;background-color:#2a9fd6;text-decoration:none;outline:0}::-moz-focus-inner{outline:0}

+ 10
- 8
public/views/home.html View File

@@ -1,21 +1,23 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<title>Shimapan</title>
<meta charset="utf-8"/>
<base href="/"/>
<link rel="stylesheet" href="/css/home.css"/>
<title>Shrimpa</title>

<link rel="stylesheet" href="/css/home.min.css"/>
<link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet"/>
<link href="https://fonts.googleapis.com/css?family=Roboto+Mono" rel="stylesheet"/>
<script src="/js/shimapan.bundle.js"></script>

<script src="/js/shrimpa.bundle.js"></script>
</head>
<body ng-app="shimapan">
<body ng-app="shrimpa">
<div id="container">
<h1>Shimapan~</h1>
<h1>Shrimpa~</h1>
<upload-component></upload-component>
<nav>
<ul>
<li><a href="/">Shimapan</a></li>
<li><a href="/">Shrimpa</a></li>
<li><a href="/panel">Panel</a></li>
<li><a href="">Tools</a></li>
<li><a href="https://github.com/Foltik/shimapan">GitHub</a></li>
@@ -24,4 +26,4 @@
</nav>
</div>
</body>
</html>
</html>

+ 2
- 2
public/views/login.html View File

@@ -6,9 +6,9 @@

<link href="/css/form.css" type="text/css" rel="stylesheet"/>

<script src="/js/shimapan.bundle.js"></script>
<script src="/js/shrimpa.bundle.js"></script>
</head>
<body ng-app="shimapan">
<body ng-app="shrimpa">
<div id="container">
<login-component></login-component>
</div>


+ 3
- 3
public/views/panel.html View File

@@ -9,9 +9,9 @@
integrity="sha384-hWVjflwFxL6sNzntih27bfxkr27PmbbK/iSvJ+a4+0owXq79v+lsFkW54bOGbiDQ" crossorigin="anonymous">
<script src="/js/shimapan.bundle.js"></script>
</head>
<body ng-app="shimapan-panel">
<body ng-app="shrimpa-panel">
<div class="container">
<div class="sidebar-title" ng-click="$state.go('home')"><span>Shimapan</span></div>
<div class="sidebar-title" ng-click="$state.go('home')"><span>Shrimpa</span></div>
<div class="sidebar" ng-controller="NavController">
<ul class="nav">
<li>
@@ -48,4 +48,4 @@
</div>
</div>
</body>
</html>
</html>

+ 2
- 2
public/views/panel/keys.html View File

@@ -21,7 +21,7 @@
<pre>{{currKey.key}}</pre>
<br/>
<p>This key can be used with any 3rd party program or service to upload to and manage your account
with Shimapan.</p>
with Shrimpa.</p>
<br/>
<p>Download the <a href="" ng-click="downloadBash()">bash script</a> to upload files from the command line.</p>
<br/>
@@ -75,4 +75,4 @@
</div>
</div>
</div>
</div>
</div>

+ 2
- 2
public/views/register.html View File

@@ -6,9 +6,9 @@

<link href="/css/form.css" type="text/css" rel="stylesheet"/>

<script src="/js/shimapan.bundle.js"></script>
<script src="/js/shrimpa.bundle.js"></script>
</head>
<body ng-app="shimapan">
<body ng-app="shrimpa">
<div id="container">
<register-component></register-component>
</div>


public/views/shimapan/login-form.html → public/views/shrimpa/login-form.html View File


public/views/shimapan/register-form.html → public/views/shrimpa/register-form.html View File


public/views/shimapan/upload-form.html → public/views/shrimpa/upload-form.html View File


+ 1
- 1
server.js View File

@@ -42,7 +42,7 @@ app.use(session({
cookie: {
//secure: true,
httpOnly: true,
//domain: 'shimapan.rocks',
//domain: 'shrimpa.rocks',
maxAge: 1000 * 60 * 60
}
}));


Loading…
Cancel
Save