diff options
-rw-r--r-- | .eslintrc | 66 | ||||
-rw-r--r-- | .meteor/packages | 2 | ||||
-rw-r--r-- | .meteor/release | 2 | ||||
-rw-r--r-- | .meteor/versions | 38 | ||||
-rw-r--r-- | client/components/cards/attachments.js | 2 | ||||
-rw-r--r-- | client/components/main/layouts.jade | 17 | ||||
-rw-r--r-- | client/components/users/userForm.styl | 120 | ||||
-rw-r--r-- | client/config/blazeHelpers.js | 2 | ||||
-rw-r--r-- | config/router.js (renamed from client/config/router.js) | 2 | ||||
-rw-r--r-- | models/attachments.js | 2 | ||||
-rw-r--r-- | models/users.js | 2 | ||||
-rw-r--r-- | sandstorm.js | 8 |
12 files changed, 130 insertions, 133 deletions
@@ -1,11 +1,6 @@ ecmaFeatures: experimentalObjectRestSpread: true -plugins: - - meteor - -parser: babel-eslint - rules: strict: 0 no-undef: 2 @@ -27,12 +22,14 @@ rules: camelcase: 2 comma-spacing: 2 comma-style: 2 + eol-last: 2 linebreak-style: [2, unix] new-parens: 2 no-lonely-if: 2 no-multiple-empty-lines: 2 no-nested-ternary: 2 no-spaced-func: 2 + no-trailing-spaces: 2 operator-linebreak: 2 quotes: [2, single] semi-spacing: 2 @@ -50,39 +47,25 @@ rules: prefer-spread: 2 prefer-template: 2 - # eslint-plugin-meteor - ## Meteor API - meteor/globals: 2 - meteor/core: 2 - meteor/pubsub: 2 - meteor/methods: 2 - meteor/check: 2 - meteor/connections: 2 - meteor/collections: 2 - meteor/session: [2, 'no-equal'] - - ## Best practices - meteor/no-session: 0 - meteor/no-zero-timeout: 2 - meteor/no-blaze-lifecycle-assignment: 2 - -settings: - meteor: - - # Our collections - collections: - - AccountsTemplates - - Activities - - Attachments - - Boards - - CardComments - - Cards - - Lists - - UnsavedEditCollection - - Users - globals: + # Meteor globals + Meteor: false + Session: false + HTML: false + check: false + Tracker: false + Blaze: false + Accounts: false + Match: false + Mongo: false + Random: false + ReactiveVar: false + Email: false + Template: false + # Exported by packages we use + '$': false + _: false autosize: false Avatar: true Avatars: true @@ -108,6 +91,17 @@ globals: T9n: false TAPi18n: false + # Our collections + AccountsTemplates: true + Activities: true + Attachments: true + Boards: true + CardComments: true + Cards: true + Lists: true + UnsavedEditCollection: true + Users: true + # Our objects CSSEvents: true EscapeActions: true diff --git a/.meteor/packages b/.meteor/packages index ad6ddf0b..1756f8a8 100644 --- a/.meteor/packages +++ b/.meteor/packages @@ -7,9 +7,9 @@ meteor-base # Build system ecmascript +stylus standard-minifiers mquandalle:jade -mquandalle:stylus # Polyfills es5-shim diff --git a/.meteor/release b/.meteor/release index 3a05e0a2..aa93b69d 100644 --- a/.meteor/release +++ b/.meteor/release @@ -1 +1 @@ -METEOR@1.2.1 +METEOR@1.2.2-faster-rebuilds.0 diff --git a/.meteor/versions b/.meteor/versions index 8e9282e7..3742b42e 100644 --- a/.meteor/versions +++ b/.meteor/versions @@ -7,7 +7,7 @@ alethes:pages@1.8.4 arillo:flow-router-helpers@0.4.7 audit-argument-checks@1.0.4 autoupdate@1.2.4 -babel-compiler@5.8.24_1 +babel-compiler@5.8.25-faster-rebuild.0 babel-runtime@0.1.4 base64@1.0.4 binary-heap@1.0.4 @@ -15,7 +15,7 @@ blaze@2.1.3 blaze-html-templates@1.0.1 blaze-tools@1.0.4 boilerplate-generator@1.0.4 -caching-compiler@1.0.0 +caching-compiler@1.0.1-faster-rebuild.0 caching-html-compiler@1.0.2 callback-hook@1.0.4 cfs:access-point@0.1.49 @@ -37,21 +37,21 @@ cfs:upload-http@0.0.20 cfs:worker@0.1.4 check@1.1.0 chuangbo:cookie@1.1.0 -coffeescript@1.0.11 +coffeescript@1.0.12-faster-rebuild.0 cosmos:browserify@0.9.2 cottz:publish-relations@2.0.0 dburles:collection-helpers@1.0.4 ddp@1.2.2 -ddp-client@1.2.1 +ddp-client@1.2.2-faster-rebuild.0 ddp-common@1.2.2 ddp-rate-limiter@1.0.0 -ddp-server@1.2.2 +ddp-server@1.2.3-faster-rebuild.0 deps@1.0.9 diff-sequence@1.0.1 -ecmascript@0.1.6 +ecmascript@0.1.7-faster-rebuild.0 ecmascript-runtime@0.2.6 ejson@1.0.7 -email@1.0.8 +email@1.0.9-faster-rebuild.0 es5-shim@4.1.14 fastclick@1.0.7 fortawesome:fontawesome@4.5.0 @@ -59,7 +59,7 @@ geojson-utils@1.0.4 hot-code-push@1.0.0 html-tools@1.0.5 htmljs@1.0.5 -http@1.1.1 +http@1.1.2-faster-rebuild.0 id-map@1.0.4 idmontie:migrations@1.0.1 jquery@1.11.4 @@ -70,10 +70,10 @@ kenton:accounts-sandstorm@0.1.8 launch-screen@1.0.4 livedata@1.0.15 localstorage@1.0.5 -logging@1.0.8 +logging@1.0.9-faster-rebuild.0 matb33:collection-hooks@0.8.1 matteodem:easy-search@1.6.4 -meteor@1.1.10 +meteor@1.1.11-faster-rebuild.0 meteor-base@1.0.1 meteor-platform@1.2.3 meteorhacks:aggregate@1.3.0 @@ -83,25 +83,24 @@ meteorhacks:inject-data@1.4.1 meteorhacks:picker@1.0.3 meteorhacks:subs-manager@1.6.2 meteorspark:util@0.2.0 -minifiers@1.1.7 +minifiers@1.1.8-faster-rebuild.0 minimongo@1.0.10 mobile-status-bar@1.0.6 -mongo@1.1.3 +mongo@1.1.4-faster-rebuild.0 mongo-id@1.0.1 mongo-livedata@1.0.9 mousetrap:mousetrap@1.4.6_1 mquandalle:autofocus@1.0.0 mquandalle:collection-mutations@0.1.0 -mquandalle:jade@0.4.5 +mquandalle:jade@0.4.8 mquandalle:jade-compiler@0.4.5 mquandalle:jquery-textcomplete@0.8.0_1 mquandalle:jquery-ui-drag-drop-sort@0.2.0 mquandalle:moment@1.0.1 mquandalle:mousetrap-bindglobal@0.0.1 mquandalle:perfect-scrollbar@0.6.5_2 -mquandalle:stylus@1.1.1 npm-bcrypt@0.7.8_2 -npm-mongo@1.4.39_1 +npm-mongo@1.4.40-faster-rebuild.0 observe-sequence@1.0.7 ongoworks:speakingurl@1.1.0 ordered-dict@1.0.4 @@ -111,7 +110,7 @@ peerlibrary:blaze-components@0.15.1 peerlibrary:computed-field@0.3.1 peerlibrary:reactive-field@0.1.0 perak:markdown@1.0.5 -promise@0.5.1 +promise@0.5.2-faster-rebuild.0 raix:eventemitter@0.1.3 raix:handlebar-helpers@0.2.5 random@1.0.5 @@ -130,10 +129,11 @@ softwarerero:accounts-t9n@1.1.7 spacebars@1.0.7 spacebars-compiler@1.0.7 srp@1.0.4 -standard-minifiers@1.0.2 +standard-minifiers@1.0.3-faster-rebuild.0 +stylus@2.511.2-faster-rebuild.0 tap:i18n@1.7.0 templates:tabs@2.2.0 -templating@1.1.5 +templating@1.1.6-faster-rebuild.0 templating-tools@1.0.0 tracker@1.0.9 ui@1.0.8 @@ -143,6 +143,6 @@ useraccounts:core@1.13.0 useraccounts:flow-routing@1.13.0 useraccounts:unstyled@1.13.0 verron:autosize@3.0.8 -webapp@1.2.3 +webapp@1.2.4-faster-rebuild.0 webapp-hashing@1.0.5 zimme:active-route@2.3.2 diff --git a/client/components/cards/attachments.js b/client/components/cards/attachments.js index 1e5aa03b..4e3e0b19 100644 --- a/client/components/cards/attachments.js +++ b/client/components/cards/attachments.js @@ -22,7 +22,7 @@ Template.attachmentsGalery.events({ }, 'click .js-preview-image'(evt) { Popup.open('previewAttachedImage').call(this, evt); - // when multiple thumbnails, if click one then another very fast, + // when multiple thumbnails, if click one then another very fast, // we might get a wrong width from previous img. // when popup reused, onRendered() won't be called, so we cannot get there. // here make sure to get correct size when this img fully loaded. diff --git a/client/components/main/layouts.jade b/client/components/main/layouts.jade index 2095e016..943ebe0f 100644 --- a/client/components/main/layouts.jade +++ b/client/components/main/layouts.jade @@ -12,14 +12,15 @@ template(name="userFormsLayout") section.auth-layout h1.at-form-landing-logo img(src="{{pathFor '/wekan-logo.png'}}" alt="Wekan") - +Template.dynamic(template=content) - div.at-form-lang - select.select-lang.js-userform-set-language - each languages - if isCurrentLanguage - option(value="{{tag}}" selected="selected") {{name}} - else - option(value="{{tag}}") {{name}} + section.auth-dialog + +Template.dynamic(template=content) + div.at-form-lang + select.select-lang.js-userform-set-language + each languages + if isCurrentLanguage + option(value="{{tag}}" selected="selected") {{name}} + else + option(value="{{tag}}") {{name}} template(name="defaultLayout") +header diff --git a/client/components/users/userForm.styl b/client/components/users/userForm.styl index 48a6a74e..930efb5a 100644 --- a/client/components/users/userForm.styl +++ b/client/components/users/userForm.styl @@ -3,58 +3,61 @@ width: 249px margin: auto margin-top: 50px - margin-top: 17vh + margin-bottom: 20px - .at-form - margin: auto + .auth-dialog width: 275px padding: 25px - margin-top: 20px - padding-bottom: 10px + margin: auto + margin-bottom: 20px background: #fff border-radius: 3px border: 1px solid #dbdbdb border-bottom-color: #c2c2c2 box-shadow: 0 1px 6px rgba(0, 0, 0, .3) - .at-link - color: darken(#27AE60, 40%) - - label - margin-bottom: 3px - - input - width: 100% - - .at-title - background: #F7F7F7 - margin: -25px - padding: 15px 25px 5px - margin-bottom: 20px - border-bottom: 1px solid #dcdcdc - color: darken(white, 70%) - font-weight: bold - - .at-signup-link, - .at-signin-link, - .at-forgotPwd - font-size: 0.9em - margin-top: 15px - color: darken(white, 70%) - - .at-signUp, - .at-signIn + .at-form + + .at-link + color: darken(#27AE60, 40%) + + label + margin-bottom: 3px + + input + width: 100% + + button + width: 100% + background: #216694 + color: #fff + + .at-title + background: #F7F7F7 + margin: -25px + padding: 15px 25px 5px + margin-bottom: 20px + border-bottom: 1px solid #dcdcdc + color: darken(white, 70%) font-weight: bold - .at-form-lang - margin: auto - width: 275px - padding: 25px - padding-bottom: 10px + .at-signup-link, + .at-signin-link, + .at-forgotPwd + font-size: 0.9em + margin-top: 15px + color: darken(white, 70%) - .select-lang - width: 275px - font-size: 1.0em + .at-signUp, + .at-signIn + font-weight: bold + + .at-form-lang + margin-top: 0px + + .select-lang + width: 100% + margin-top: 10px @media screen and (max-width: 800px) .auth-layout @@ -64,26 +67,27 @@ padding: 0px .at-form-landing-logo - margin-top: 20px - margin-bottom: 20px + width: 125px + position: absolute + top: 0px + right: 20px + margin-top: 5px + margin-bottom: 5px - .at-form + img + width: 125px + + .auth-dialog width: calc(100% - 50px) - height: calc(100% - 162px) - margin: 0px + height: calc(100% - 50px) padding: 25px - - button - width: 100% - - .at-form-lang - width: 100% + min-height: 380px margin: 0px - padding: 0px + margin-bottom: 0px + border: 0px - .select-lang - width: 200px - font-size: 1.2em - position: absolute - left: calc((100% - 200px)/2) - bottom: 25px + .at-form + .at-title + h3 + width: calc(100% - 125px) + overflow-x: hidden diff --git a/client/config/blazeHelpers.js b/client/config/blazeHelpers.js index adf5ef6a..f3a1757f 100644 --- a/client/config/blazeHelpers.js +++ b/client/config/blazeHelpers.js @@ -14,6 +14,6 @@ Blaze.registerHelper('currentCard', () => { Blaze.registerHelper('getUser', (userId) => Users.findOne(userId)); -UI.registerHelper('concat', function (...args) { +Blaze.registerHelper('concat', function (...args) { return Array.prototype.slice.call(args, 0, -1).join(''); }); diff --git a/client/config/router.js b/config/router.js index ddd69db4..99d5bff6 100644 --- a/client/config/router.js +++ b/config/router.js @@ -113,7 +113,7 @@ const appTitle = 'Wekan'; // that the global variable `Boards` is undefined when this file loads so we // wait a bit until hopefully all files are loaded. This will be fixed in a // clean way once Meteor will support ES6 modules -- hopefully in Meteor 1.3. -Meteor.startup(() => { +Meteor.isClient && Meteor.startup(() => { Tracker.autorun(() => { const currentBoard = Boards.findOne(Session.get('currentBoard')); const titleStack = [appTitle]; diff --git a/models/attachments.js b/models/attachments.js index 01e467ff..8ef0fef0 100644 --- a/models/attachments.js +++ b/models/attachments.js @@ -1,4 +1,4 @@ -Attachments = new FS.Collection('attachments', { // eslint-disable-line meteor/collections +Attachments = new FS.Collection('attachments', { stores: [ // XXX Add a new store for cover thumbnails so we don't load big images in diff --git a/models/users.js b/models/users.js index 8dd5ed78..45e2170e 100644 --- a/models/users.js +++ b/models/users.js @@ -1,4 +1,4 @@ -Users = Meteor.users; // eslint-disable-line meteor/collections +Users = Meteor.users; // Search a user in the complete server database by its name or username. This // is used for instance to add a new user to a board. diff --git a/sandstorm.js b/sandstorm.js index 85124f04..4abe2efb 100644 --- a/sandstorm.js +++ b/sandstorm.js @@ -51,10 +51,8 @@ if (isSandstorm && Meteor.isServer) { // XXX Maybe the sandstorm http-bridge could provide some kind of "home URL" // in the manifest? const base = req.headers['x-sandstorm-base-path']; - // XXX If this routing scheme changes, this will break. We should generate - // the location URL using the router, but at the time of writing, the - // it is only accessible on the client. - const boardPath = `/b/${sandstormBoard._id}/${sandstormBoard.slug}`; + const { _id, slug } = sandstormBoard; + const boardPath = FlowRouter.path('board', { id: _id, slug }); res.writeHead(301, { Location: base + boardPath, @@ -173,7 +171,7 @@ if (isSandstorm && Meteor.isClient) { // sandstorm client to return relative paths instead of absolutes. const _absoluteUrl = Meteor.absoluteUrl; const _defaultOptions = Meteor.absoluteUrl.defaultOptions; - Meteor.absoluteUrl = (path, options) => { // eslint-disable-line meteor/core + Meteor.absoluteUrl = (path, options) => { const url = _absoluteUrl(path, options); return url.replace(/^https?:\/\/127\.0\.0\.1:[0-9]{2,5}/, ''); }; |