Addind public template for working on int
@ -1 +0,0 @@
|
||||
../../../../../templates/admin/dist/css/main.css
|
5
server/src/uds/static/adm/css/uds.css
Normal file
3
server/templates/public/.bowerrc
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"directory": "bower_components"
|
||||
}
|
21
server/templates/public/.editorconfig
Normal file
@ -0,0 +1,21 @@
|
||||
# EditorConfig helps developers define and maintain consistent
|
||||
# coding styles between different editors and IDEs
|
||||
# editorconfig.org
|
||||
|
||||
root = true
|
||||
|
||||
|
||||
[*]
|
||||
|
||||
# Change these settings to your own preference
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
||||
# We recommend you to keep these unchanged
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
1
server/templates/public/.gitattributes
vendored
Normal file
@ -0,0 +1 @@
|
||||
* text=auto
|
4
server/templates/public/.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
node_modules
|
||||
dist
|
||||
.tmp
|
||||
bower_components
|
3
server/templates/public/.yo-rc.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"generator-mocha": {}
|
||||
}
|
443
server/templates/public/Gruntfile.js
Normal file
@ -0,0 +1,443 @@
|
||||
// Generated on 2016-02-15 using
|
||||
// generator-webapp 1.1.0
|
||||
'use strict';
|
||||
|
||||
// # Globbing
|
||||
// for performance reasons we're only matching one level down:
|
||||
// 'test/spec/{,*/}*.js'
|
||||
// If you want to recursively match all subfolders, use:
|
||||
// 'test/spec/**/*.js'
|
||||
|
||||
module.exports = function (grunt) {
|
||||
|
||||
// Time how long tasks take. Can help when optimizing build times
|
||||
require('time-grunt')(grunt);
|
||||
|
||||
// Automatically load required grunt tasks
|
||||
require('jit-grunt')(grunt, {
|
||||
useminPrepare: 'grunt-usemin'
|
||||
});
|
||||
|
||||
// Configurable paths
|
||||
var config = {
|
||||
app: 'app',
|
||||
dist: 'dist'
|
||||
};
|
||||
|
||||
// Define the configuration for all the tasks
|
||||
grunt.initConfig({
|
||||
|
||||
// Project settings
|
||||
config: config,
|
||||
|
||||
// Watches files for changes and runs tasks based on the changed files
|
||||
watch: {
|
||||
bower: {
|
||||
files: ['bower.json'],
|
||||
tasks: ['wiredep']
|
||||
},
|
||||
babel: {
|
||||
files: ['<%= config.app %>/scripts/{,*/}*.js'],
|
||||
tasks: ['babel:dist']
|
||||
},
|
||||
babelTest: {
|
||||
files: ['test/spec/{,*/}*.js'],
|
||||
tasks: ['babel:test', 'test:watch']
|
||||
},
|
||||
gruntfile: {
|
||||
files: ['Gruntfile.js']
|
||||
},
|
||||
sass: {
|
||||
files: ['<%= config.app %>/styles/{,*/}*.{scss,sass}'],
|
||||
tasks: ['sass', 'postcss']
|
||||
},
|
||||
styles: {
|
||||
files: ['<%= config.app %>/styles/{,*/}*.css'],
|
||||
tasks: ['newer:copy:styles', 'postcss']
|
||||
}
|
||||
},
|
||||
|
||||
browserSync: {
|
||||
options: {
|
||||
notify: false,
|
||||
background: true,
|
||||
watchOptions: {
|
||||
ignored: ''
|
||||
}
|
||||
},
|
||||
livereload: {
|
||||
options: {
|
||||
files: [
|
||||
'<%= config.app %>/{,*/}*.html',
|
||||
'.tmp/styles/{,*/}*.css',
|
||||
'<%= config.app %>/images/{,*/}*',
|
||||
'.tmp/scripts/{,*/}*.js'
|
||||
],
|
||||
port: 9000,
|
||||
server: {
|
||||
baseDir: ['.tmp', config.app],
|
||||
routes: {
|
||||
'/bower_components': './bower_components'
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
test: {
|
||||
options: {
|
||||
port: 9001,
|
||||
open: false,
|
||||
logLevel: 'silent',
|
||||
host: 'localhost',
|
||||
server: {
|
||||
baseDir: ['.tmp', './test', config.app],
|
||||
routes: {
|
||||
'/bower_components': './bower_components'
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
dist: {
|
||||
options: {
|
||||
background: false,
|
||||
server: '<%= config.dist %>'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// Empties folders to start fresh
|
||||
clean: {
|
||||
dist: {
|
||||
files: [{
|
||||
dot: true,
|
||||
src: [
|
||||
'.tmp',
|
||||
'<%= config.dist %>/*',
|
||||
'!<%= config.dist %>/.git*'
|
||||
]
|
||||
}]
|
||||
},
|
||||
server: '.tmp'
|
||||
},
|
||||
|
||||
// Make sure code styles are up to par and there are no obvious mistakes
|
||||
eslint: {
|
||||
target: [
|
||||
'Gruntfile.js',
|
||||
'<%= config.app %>/scripts/{,*/}*.js',
|
||||
'!<%= config.app %>/scripts/vendor/*',
|
||||
'test/spec/{,*/}*.js'
|
||||
]
|
||||
},
|
||||
|
||||
// Mocha testing framework configuration options
|
||||
mocha: {
|
||||
all: {
|
||||
options: {
|
||||
run: true,
|
||||
urls: ['http://<%= browserSync.test.options.host %>:<%= browserSync.test.options.port %>/index.html']
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// Compiles ES6 with Babel
|
||||
babel: {
|
||||
options: {
|
||||
sourceMap: true
|
||||
},
|
||||
dist: {
|
||||
files: [{
|
||||
expand: true,
|
||||
cwd: '<%= config.app %>/scripts',
|
||||
src: '{,*/}*.js',
|
||||
dest: '.tmp/scripts',
|
||||
ext: '.js'
|
||||
}]
|
||||
},
|
||||
test: {
|
||||
files: [{
|
||||
expand: true,
|
||||
cwd: 'test/spec',
|
||||
src: '{,*/}*.js',
|
||||
dest: '.tmp/spec',
|
||||
ext: '.js'
|
||||
}]
|
||||
}
|
||||
},
|
||||
|
||||
// Compiles Sass to CSS and generates necessary files if requested
|
||||
sass: {
|
||||
options: {
|
||||
sourceMap: true,
|
||||
sourceMapEmbed: true,
|
||||
sourceMapContents: true,
|
||||
includePaths: ['.']
|
||||
},
|
||||
dist: {
|
||||
files: [{
|
||||
expand: true,
|
||||
cwd: '<%= config.app %>/styles',
|
||||
src: ['*.{scss,sass}'],
|
||||
dest: '.tmp/styles',
|
||||
ext: '.css'
|
||||
}]
|
||||
}
|
||||
},
|
||||
|
||||
postcss: {
|
||||
options: {
|
||||
map: true,
|
||||
processors: [
|
||||
// Add vendor prefixed styles
|
||||
require('autoprefixer')({
|
||||
browsers: ['> 1%', 'last 2 versions', 'Firefox ESR']
|
||||
})
|
||||
]
|
||||
},
|
||||
dist: {
|
||||
files: [{
|
||||
expand: true,
|
||||
cwd: '.tmp/styles/',
|
||||
src: '{,*/}*.css',
|
||||
dest: '.tmp/styles/'
|
||||
}]
|
||||
}
|
||||
},
|
||||
|
||||
// Automatically inject Bower components into the HTML file
|
||||
wiredep: {
|
||||
app: {
|
||||
src: ['<%= config.app %>/index.html'],
|
||||
exclude: ['bootstrap.js'],
|
||||
ignorePath: /^(\.\.\/)*\.\./
|
||||
},
|
||||
sass: {
|
||||
src: ['<%= config.app %>/styles/{,*/}*.{scss,sass}'],
|
||||
ignorePath: /^(\.\.\/)+/
|
||||
}
|
||||
},
|
||||
|
||||
// Renames files for browser caching purposes
|
||||
filerev: {
|
||||
dist: {
|
||||
src: [
|
||||
'<%= config.dist %>/scripts/{,*/}*.js',
|
||||
'<%= config.dist %>/styles/{,*/}*.css',
|
||||
'<%= config.dist %>/images/{,*/}*.*',
|
||||
'<%= config.dist %>/styles/fonts/{,*/}*.*',
|
||||
'<%= config.dist %>/*.{ico,png}'
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
// Reads HTML for usemin blocks to enable smart builds that automatically
|
||||
// concat, minify and revision files. Creates configurations in memory so
|
||||
// additional tasks can operate on them
|
||||
useminPrepare: {
|
||||
options: {
|
||||
dest: '<%= config.dist %>'
|
||||
},
|
||||
html: '<%= config.app %>/index.html'
|
||||
},
|
||||
|
||||
// Performs rewrites based on rev and the useminPrepare configuration
|
||||
usemin: {
|
||||
options: {
|
||||
assetsDirs: [
|
||||
'<%= config.dist %>',
|
||||
'<%= config.dist %>/images',
|
||||
'<%= config.dist %>/styles'
|
||||
]
|
||||
},
|
||||
html: ['<%= config.dist %>/{,*/}*.html'],
|
||||
css: ['<%= config.dist %>/styles/{,*/}*.css']
|
||||
},
|
||||
|
||||
// The following *-min tasks produce minified files in the dist folder
|
||||
imagemin: {
|
||||
dist: {
|
||||
files: [{
|
||||
expand: true,
|
||||
cwd: '<%= config.app %>/images',
|
||||
src: '{,*/}*.{gif,jpeg,jpg,png}',
|
||||
dest: '<%= config.dist %>/images'
|
||||
}]
|
||||
}
|
||||
},
|
||||
|
||||
svgmin: {
|
||||
dist: {
|
||||
files: [{
|
||||
expand: true,
|
||||
cwd: '<%= config.app %>/images',
|
||||
src: '{,*/}*.svg',
|
||||
dest: '<%= config.dist %>/images'
|
||||
}]
|
||||
}
|
||||
},
|
||||
|
||||
htmlmin: {
|
||||
dist: {
|
||||
options: {
|
||||
collapseBooleanAttributes: true,
|
||||
collapseWhitespace: true,
|
||||
conservativeCollapse: true,
|
||||
removeAttributeQuotes: true,
|
||||
removeCommentsFromCDATA: true,
|
||||
removeEmptyAttributes: true,
|
||||
removeOptionalTags: true,
|
||||
// true would impact styles with attribute selectors
|
||||
removeRedundantAttributes: false,
|
||||
useShortDoctype: true
|
||||
},
|
||||
files: [{
|
||||
expand: true,
|
||||
cwd: '<%= config.dist %>',
|
||||
src: '{,*/}*.html',
|
||||
dest: '<%= config.dist %>'
|
||||
}]
|
||||
}
|
||||
},
|
||||
|
||||
// By default, your `index.html`'s <!-- Usemin block --> will take care
|
||||
// of minification. These next options are pre-configured if you do not
|
||||
// wish to use the Usemin blocks.
|
||||
// cssmin: {
|
||||
// dist: {
|
||||
// files: {
|
||||
// '<%= config.dist %>/styles/main.css': [
|
||||
// '.tmp/styles/{,*/}*.css',
|
||||
// '<%= config.app %>/styles/{,*/}*.css'
|
||||
// ]
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
// uglify: {
|
||||
// dist: {
|
||||
// files: {
|
||||
// '<%= config.dist %>/scripts/scripts.js': [
|
||||
// '<%= config.dist %>/scripts/scripts.js'
|
||||
// ]
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
// concat: {
|
||||
// dist: {}
|
||||
// },
|
||||
|
||||
// Copies remaining files to places other tasks can use
|
||||
copy: {
|
||||
dist: {
|
||||
files: [{
|
||||
expand: true,
|
||||
dot: true,
|
||||
cwd: '<%= config.app %>',
|
||||
dest: '<%= config.dist %>',
|
||||
src: [
|
||||
'*.{ico,png,txt}',
|
||||
'images/{,*/}*.webp',
|
||||
'{,*/}*.html',
|
||||
'styles/fonts/{,*/}*.*'
|
||||
]
|
||||
}, {
|
||||
expand: true,
|
||||
dot: true,
|
||||
cwd: '.',
|
||||
src: 'bower_components/bootstrap-sass/assets/fonts/bootstrap/*',
|
||||
dest: '<%= config.dist %>'
|
||||
}]
|
||||
}
|
||||
},
|
||||
|
||||
// Generates a custom Modernizr build that includes only the tests you
|
||||
// reference in your app
|
||||
modernizr: {
|
||||
dist: {
|
||||
devFile: 'bower_components/modernizr/modernizr.js',
|
||||
outputFile: '<%= config.dist %>/scripts/vendor/modernizr.js',
|
||||
files: {
|
||||
src: [
|
||||
'<%= config.dist %>/scripts/{,*/}*.js',
|
||||
'<%= config.dist %>/styles/{,*/}*.css',
|
||||
'!<%= config.dist %>/scripts/vendor/*'
|
||||
]
|
||||
},
|
||||
uglify: true
|
||||
}
|
||||
},
|
||||
|
||||
// Run some tasks in parallel to speed up build process
|
||||
concurrent: {
|
||||
server: [
|
||||
'babel:dist',
|
||||
'sass'
|
||||
],
|
||||
test: [
|
||||
'babel'
|
||||
],
|
||||
dist: [
|
||||
'babel',
|
||||
'sass',
|
||||
'imagemin',
|
||||
'svgmin'
|
||||
]
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
grunt.registerTask('serve', 'start the server and preview your app', function (target) {
|
||||
|
||||
if (target === 'dist') {
|
||||
return grunt.task.run(['build', 'browserSync:dist']);
|
||||
}
|
||||
|
||||
grunt.task.run([
|
||||
'clean:server',
|
||||
'wiredep',
|
||||
'concurrent:server',
|
||||
'postcss',
|
||||
'browserSync:livereload',
|
||||
'watch'
|
||||
]);
|
||||
});
|
||||
|
||||
grunt.registerTask('server', function (target) {
|
||||
grunt.log.warn('The `server` task has been deprecated. Use `grunt serve` to start a server.');
|
||||
grunt.task.run([target ? ('serve:' + target) : 'serve']);
|
||||
});
|
||||
|
||||
grunt.registerTask('test', function (target) {
|
||||
if (target !== 'watch') {
|
||||
grunt.task.run([
|
||||
'clean:server',
|
||||
'concurrent:test',
|
||||
'postcss'
|
||||
]);
|
||||
}
|
||||
|
||||
grunt.task.run([
|
||||
'browserSync:test',
|
||||
'mocha'
|
||||
]);
|
||||
});
|
||||
|
||||
grunt.registerTask('build', [
|
||||
'clean:dist',
|
||||
'wiredep',
|
||||
'useminPrepare',
|
||||
'concurrent:dist',
|
||||
'postcss',
|
||||
'concat',
|
||||
'cssmin',
|
||||
'copy:dist',
|
||||
'modernizr',
|
||||
'filerev',
|
||||
'usemin',
|
||||
'htmlmin'
|
||||
]);
|
||||
|
||||
grunt.registerTask('default', [
|
||||
'newer:eslint',
|
||||
'test',
|
||||
'build'
|
||||
]);
|
||||
};
|
BIN
server/templates/public/app/apple-touch-icon.png
Normal file
After Width: | Height: | Size: 6.5 KiB |
BIN
server/templates/public/app/favicon.ico
Normal file
After Width: | Height: | Size: 4.2 KiB |
BIN
server/templates/public/app/img/2downarrow.png
Normal file
After Width: | Height: | Size: 587 B |
BIN
server/templates/public/app/img/2uparrow.png
Normal file
After Width: | Height: | Size: 656 B |
BIN
server/templates/public/app/img/access.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
@ -0,0 +1,7 @@
|
||||
Copyright (c) 2012 Go Squared Ltd. http://www.gosquared.com/
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
After Width: | Height: | Size: 56 KiB |
BIN
server/templates/public/app/img/down.png
Normal file
After Width: | Height: | Size: 198 B |
BIN
server/templates/public/app/img/exit.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
server/templates/public/app/img/favicon.ico
Normal file
After Width: | Height: | Size: 9.4 KiB |
BIN
server/templates/public/app/img/favicon.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
server/templates/public/app/img/flags/de.png
Normal file
After Width: | Height: | Size: 209 B |
BIN
server/templates/public/app/img/flags/en.png
Normal file
After Width: | Height: | Size: 251 B |
BIN
server/templates/public/app/img/flags/es.png
Normal file
After Width: | Height: | Size: 232 B |
BIN
server/templates/public/app/img/flags/fr.png
Normal file
After Width: | Height: | Size: 208 B |
BIN
server/templates/public/app/img/flags/it.png
Normal file
After Width: | Height: | Size: 420 B |
BIN
server/templates/public/app/img/flags/pt.png
Normal file
After Width: | Height: | Size: 554 B |
BIN
server/templates/public/app/img/ico-mas.png
Normal file
After Width: | Height: | Size: 149 B |
BIN
server/templates/public/app/img/ico-menos.png
Normal file
After Width: | Height: | Size: 125 B |
BIN
server/templates/public/app/img/loading.gif
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
server/templates/public/app/img/login-img.png
Normal file
After Width: | Height: | Size: 5.6 KiB |
BIN
server/templates/public/app/img/mas.png
Normal file
After Width: | Height: | Size: 221 B |
BIN
server/templates/public/app/img/menos.png
Normal file
After Width: | Height: | Size: 163 B |
BIN
server/templates/public/app/img/progressbar.gif
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
server/templates/public/app/img/uds-service.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
BIN
server/templates/public/app/img/uds-small-back.png
Normal file
After Width: | Height: | Size: 976 B |
BIN
server/templates/public/app/img/udsicon.png
Normal file
After Width: | Height: | Size: 6.5 KiB |
BIN
server/templates/public/app/img/unknown.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
server/templates/public/app/img/up.png
Normal file
After Width: | Height: | Size: 184 B |
BIN
server/templates/public/app/img/volver.png
Normal file
After Width: | Height: | Size: 163 B |
145
server/templates/public/app/index.html
Normal file
@ -0,0 +1,145 @@
|
||||
<!doctype html>
|
||||
<html class="no-js" lang="">
|
||||
<head>
|
||||
|
||||
|
||||
<meta charset="utf-8">
|
||||
<title>public</title>
|
||||
<meta name="description" content="">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<link rel="shortcut icon" href="/favicon.ico">
|
||||
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||
<!-- Place favicon.ico and apple-touch-icon.png in the root directory -->
|
||||
|
||||
<!-- build:css(.) styles/vendor.css -->
|
||||
<!-- bower:css -->
|
||||
<!-- endbower -->
|
||||
<!-- endbuild -->
|
||||
<!-- build:css(.tmp) styles/main.css -->
|
||||
<link rel="stylesheet" href="styles/main.css">
|
||||
<!-- endbuild -->
|
||||
<!-- build:js scripts/vendor/modernizr.js -->
|
||||
<script src="/bower_components/modernizr/modernizr.js"></script>
|
||||
<!-- endbuild -->
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<!--[if lt IE 10]>
|
||||
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
|
||||
<![endif]-->
|
||||
|
||||
|
||||
<div class="container">
|
||||
<nav role="navigation" class="navbar navbar-default navbar-fixed-top">
|
||||
<!-- Brand and toggle get grouped for better mobile display -->
|
||||
<div class="navbar-header">
|
||||
<button data-target=".navbar-ex1-collapse" data-toggle="collapse" class="navbar-toggle" type="button">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a href="/" class="navbar-brand">
|
||||
<img class="navbar-img pull-left" src="img/udsicon.png" alt="Universal Desktop Services">
|
||||
<span>Universal Desktop Services</span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="collapse navbar-collapse navbar-ex1-collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
</ul>
|
||||
<form method="post" action="/i18n/setlang/" id="form_language">
|
||||
<input type="hidden" value="zWr48z50KDHA2mmsgTdLvkByo7FSaYgD" name="csrfmiddlewaretoken">
|
||||
<input type="hidden" value="" name="language" id="id_language">
|
||||
<ul class="nav navbar-nav navbar-right">
|
||||
<li><a href="/about">About</a></li>
|
||||
<li class="dropdown">
|
||||
<a data-toggle="dropdown" class="dropdown-toggle" href="#"><i class="fa fa-comments-o"></i> English<b class="caret"></b></a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a onclick="$("#id_language").val("es"); $("#form_language").submit()" href="#">Spanish</a></li>
|
||||
<li><a onclick="$("#id_language").val("fr"); $("#form_language").submit()" href="#">French</a></li>
|
||||
<li><a onclick="$("#id_language").val("de"); $("#form_language").submit()" href="#">German</a></li>
|
||||
<li><a onclick="$("#id_language").val("pt"); $("#form_language").submit()" href="#">Portuguese</a></li>
|
||||
<li><a onclick="$("#id_language").val("it"); $("#form_language").submit()" href="#">Italian</a></li>
|
||||
<li><a onclick="$("#id_language").val("eu"); $("#form_language").submit()" href="#">Basque</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="dropdown">
|
||||
<a data-toggle="dropdown" class="dropdown-toggle" href="#"><i class="fa fa-user"></i> 172.27.0.8 <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="/prefs"><span class="fa fa-edit"></span> Preferences</a></li>
|
||||
<li><a href="/down"><span class="fa fa-download"></span> UDS Plugin</a></li>
|
||||
<li><a href="/idown/"><span class="fa fa-download"></span> Downloads</a></li>
|
||||
<li><a href="/adm/"><span class="fa fa-dashboard"></span> Dashboard</a></li>
|
||||
<li><a href="/logout"><span class="fa fa-power-off text-danger"></span> Logout</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
|
||||
</ul>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
|
||||
</nav>
|
||||
|
||||
<div class="jumbotron">
|
||||
<h1>'Allo, 'Allo!</h1>
|
||||
<p class="lead">Always a pleasure scaffolding your apps.</p>
|
||||
<p><a class="btn btn-lg btn-success" href="#">Splendid! <span class="glyphicon glyphicon-ok"></span></a></p>
|
||||
</div>
|
||||
|
||||
<div class="row marketing">
|
||||
<div class="col-lg-6">
|
||||
<h4><a href="https://html5boilerplate.com/">HTML5 Boilerplate</a></h4>
|
||||
<p>HTML5 Boilerplate is a professional front-end template for building fast, robust, and adaptable web apps or sites.</p>
|
||||
|
||||
<h4><a href="http://libsass.org/">Sass</a></h4>
|
||||
<p>Sass is a mature, stable, and powerful professional grade CSS extension language.</p>
|
||||
|
||||
|
||||
<h4><a href="http://getbootstrap.com/">Bootstrap</a></h4>
|
||||
<p>Sleek, intuitive, and powerful mobile first front-end framework for faster and easier web development.</p>
|
||||
|
||||
<h4><a href="http://modernizr.com/">Modernizr</a></h4>
|
||||
<p>Modernizr is an open-source JavaScript library that helps you build the next generation of HTML5 and CSS3-powered websites.</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
<p><span class="glyphicon glyphicon-heart"></span> from the Yeoman team</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- build:js(.) scripts/vendor.js -->
|
||||
<!-- bower:js -->
|
||||
<script src="/bower_components/jquery/dist/jquery.js"></script>
|
||||
<!-- endbower -->
|
||||
<!-- endbuild -->
|
||||
|
||||
|
||||
<!-- build:js(.) scripts/plugins.js -->
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/affix.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/alert.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/dropdown.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/tooltip.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/modal.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/transition.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/button.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/popover.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/carousel.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/scrollspy.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/collapse.js"></script>
|
||||
<script src="/bower_components/bootstrap-sass/assets/javascripts/bootstrap/tab.js"></script>
|
||||
<!-- endbuild -->
|
||||
|
||||
|
||||
<!-- build:js scripts/main.js -->
|
||||
<script src="scripts/main.js"></script>
|
||||
<!-- endbuild -->
|
||||
|
||||
</body>
|
||||
</html>
|
4
server/templates/public/app/robots.txt
Normal file
@ -0,0 +1,4 @@
|
||||
# robotstxt.org/
|
||||
|
||||
User-agent: *
|
||||
Disallow:
|
1
server/templates/public/app/scripts/main.js
Normal file
@ -0,0 +1 @@
|
||||
console.log('\'Allo \'Allo!'); // eslint-disable-line no-console
|
176
server/templates/public/app/styles/main.scss
Normal file
@ -0,0 +1,176 @@
|
||||
$icon-font-path: "../bower_components/bootstrap-sass/assets/fonts/bootstrap/";
|
||||
|
||||
// bower:scss
|
||||
@import "bower_components/bootstrap-sass/assets/stylesheets/_bootstrap.scss";
|
||||
// endbower
|
||||
|
||||
html {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
body {
|
||||
height: 100%;
|
||||
padding-top: 60px;
|
||||
}
|
||||
|
||||
.st-sticky-wrap {
|
||||
min-height: 100%;
|
||||
height: auto !important;
|
||||
height: 100%;
|
||||
margin: 0 auto -40px;
|
||||
/* Change height. Can use px, ems or % */
|
||||
}
|
||||
|
||||
.st-sticky-push {
|
||||
height: 40px;
|
||||
/* Change height. Can use px, ems or % */
|
||||
}
|
||||
|
||||
footer {
|
||||
height: 40px;
|
||||
/* Change height. Can use px, ems or % */
|
||||
text-align: right;
|
||||
margin-right: 16px;
|
||||
a:after {
|
||||
content: "Testing text";
|
||||
}
|
||||
}
|
||||
|
||||
.form-signin {
|
||||
max-width: 330px;
|
||||
padding: 15px;
|
||||
margin: 0 auto;
|
||||
.form-signin-heading {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
margin-bottom: 10px;
|
||||
.form-control {
|
||||
position: relative;
|
||||
font-size: 16px;
|
||||
height: auto;
|
||||
padding: 10px;
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
&:focus {
|
||||
z-index: 2;
|
||||
}
|
||||
}
|
||||
input {
|
||||
&[type="text"] {
|
||||
margin-bottom: -1px;
|
||||
border-bottom-left-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
&[type="password"] {
|
||||
margin-bottom: 10px;
|
||||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.account-wall {
|
||||
margin-top: 20px;
|
||||
padding: 40px 0px 20px 0px;
|
||||
background-color: #f7f7f7;
|
||||
-moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
|
||||
-webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
|
||||
box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
|
||||
.login-title {
|
||||
color: #555;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.profile-img {
|
||||
width: 96px;
|
||||
height: 96px;
|
||||
margin: 0 auto 10px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
/* Preferences form */
|
||||
|
||||
.form-preferences {
|
||||
margin-bottom: 10px;
|
||||
max-width: 640px;
|
||||
margin: 0 auto;
|
||||
legend {
|
||||
margin-top: 20px;
|
||||
padding-left: 16px;
|
||||
background-color: #e7e7e7;
|
||||
-moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
|
||||
-webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
|
||||
box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
.prefset {
|
||||
padding: 10px;
|
||||
background-color: #f7f7f7;
|
||||
-moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
|
||||
-webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
|
||||
box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
.btn {
|
||||
margin-top: 16px;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-img {
|
||||
width: 2em;
|
||||
margin-top: -8px;
|
||||
}
|
||||
|
||||
#cookie-bar {
|
||||
background: #333333;
|
||||
height: 30px;
|
||||
line-height: 24px;
|
||||
color: #eeeeee;
|
||||
text-align: center;
|
||||
padding: 3px 0;
|
||||
&.fixed {
|
||||
background: #333333;
|
||||
height: 30px;
|
||||
line-height: 24px;
|
||||
color: #eeeeee;
|
||||
text-align: center;
|
||||
padding: 3px 0;
|
||||
position: fixed;
|
||||
bottom: 0px;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
}
|
||||
p {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
a {
|
||||
color: #ffffff;
|
||||
display: inline-block;
|
||||
border-radius: 3px;
|
||||
text-decoration: none;
|
||||
padding: 0 6px;
|
||||
margin-left: 8px;
|
||||
}
|
||||
.cb-enable {
|
||||
background: #007700;
|
||||
&:hover {
|
||||
background: #009900;
|
||||
}
|
||||
}
|
||||
.cb-disable {
|
||||
background: #990000;
|
||||
&:hover {
|
||||
background: #bb0000;
|
||||
}
|
||||
}
|
||||
.cb-policy {
|
||||
background: #0033bb;
|
||||
&:hover {
|
||||
background: #0055dd;
|
||||
}
|
||||
}
|
||||
}
|
21
server/templates/public/bower.json
Normal file
@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "public",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"bootstrap-sass": "~3.3.5",
|
||||
"modernizr": "~2.8.3"
|
||||
},
|
||||
"overrides": {
|
||||
"bootstrap-sass": {
|
||||
"main": [
|
||||
"assets/stylesheets/_bootstrap.scss",
|
||||
"assets/fonts/bootstrap/*",
|
||||
"assets/javascripts/bootstrap.js"
|
||||
]
|
||||
}
|
||||
},
|
||||
"devDependencies": {
|
||||
"chai": "^3.5.0",
|
||||
"mocha": "^2.4.5"
|
||||
}
|
||||
}
|
59
server/templates/public/package.json
Normal file
@ -0,0 +1,59 @@
|
||||
{
|
||||
"private": true,
|
||||
"devDependencies": {
|
||||
"autoprefixer": "^6.0.2",
|
||||
"grunt": "^0.4.5",
|
||||
"grunt-babel": "^5.0.0",
|
||||
"grunt-browser-sync": "^2.1.2",
|
||||
"grunt-concurrent": "^1.0.0",
|
||||
"grunt-contrib-clean": "^0.6.0",
|
||||
"grunt-contrib-concat": "^0.5.1",
|
||||
"grunt-contrib-copy": "^0.8.0",
|
||||
"grunt-contrib-cssmin": "^0.12.2",
|
||||
"grunt-contrib-htmlmin": "^0.4.0",
|
||||
"grunt-contrib-imagemin": "^0.9.3",
|
||||
"grunt-contrib-uglify": "^0.8.0",
|
||||
"grunt-contrib-watch": "^0.6.1",
|
||||
"grunt-eslint": "^17.0.0",
|
||||
"grunt-filerev": "^2.2.0",
|
||||
"grunt-mocha": "^0.4.12",
|
||||
"grunt-modernizr": "^0.6.0",
|
||||
"grunt-newer": "^1.1.0",
|
||||
"grunt-postcss": "^0.6.0",
|
||||
"grunt-sass": "^1.0.0",
|
||||
"grunt-svgmin": "^2.0.1",
|
||||
"grunt-usemin": "^3.0.0",
|
||||
"grunt-wiredep": "^2.0.0",
|
||||
"jit-grunt": "^0.9.1",
|
||||
"time-grunt": "^1.1.0",
|
||||
"vinyl-fs": "2.2.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "grunt test"
|
||||
},
|
||||
"eslintConfig": {
|
||||
"extends": [
|
||||
"eslint:recommended"
|
||||
],
|
||||
"env": {
|
||||
"node": true,
|
||||
"browser": true,
|
||||
"es6": true,
|
||||
"jquery": true,
|
||||
"mocha": true
|
||||
},
|
||||
"rules": {
|
||||
"quotes": [
|
||||
2,
|
||||
"single"
|
||||
],
|
||||
"indent": [
|
||||
2,
|
||||
2
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
29
server/templates/public/test/index.html
Normal file
@ -0,0 +1,29 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Mocha Spec Runner</title>
|
||||
<link rel="stylesheet" href="../bower_components/mocha/mocha.css">
|
||||
</head>
|
||||
<body>
|
||||
<div id="mocha"></div>
|
||||
<script src="../bower_components/mocha/mocha.js"></script>
|
||||
<script>mocha.setup('bdd');</script>
|
||||
<script src="../bower_components/chai/chai.js"></script>
|
||||
<script>
|
||||
var assert = chai.assert;
|
||||
var expect = chai.expect;
|
||||
var should = chai.should();
|
||||
</script>
|
||||
<!-- bower:js -->
|
||||
<!-- endbower -->
|
||||
<!-- include source files here... -->
|
||||
<!-- include spec files here... -->
|
||||
<script src="spec/test.js"></script>
|
||||
<script>
|
||||
if (navigator.userAgent.indexOf('PhantomJS') === -1) {
|
||||
mocha.run();
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
11
server/templates/public/test/spec/test.js
Normal file
@ -0,0 +1,11 @@
|
||||
(function () {
|
||||
'use strict';
|
||||
|
||||
describe('Give it some context', function () {
|
||||
describe('maybe a bit more context here', function () {
|
||||
it('should run here few assertions', function () {
|
||||
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|