diff --git a/app/application.coffee b/app/application.coffee index f44287599..be9db6a97 100644 --- a/app/application.coffee +++ b/app/application.coffee @@ -5,6 +5,8 @@ locale = require 'locale/locale' Tracker = require 'lib/Tracker' CocoView = require 'views/kinds/CocoView' +marked.setOptions {gfm: true, sanitize: true, smartLists: true, breaks: false} + # Prevent Ctrl/Cmd + [ / ], P, S ctrlDefaultPrevented = [219, 221, 80, 83] preventBackspace = (event) -> diff --git a/app/models/CocoCollection.coffee b/app/collections/CocoCollection.coffee similarity index 100% rename from app/models/CocoCollection.coffee rename to app/collections/CocoCollection.coffee diff --git a/app/collections/ComponentsCollection.coffee b/app/collections/ComponentsCollection.coffee index 14db7a2b6..1f930576b 100644 --- a/app/collections/ComponentsCollection.coffee +++ b/app/collections/ComponentsCollection.coffee @@ -1,5 +1,5 @@ LevelComponent = require 'models/LevelComponent' -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' module.exports = class ComponentsCollection extends CocoCollection url: '/db/level.component/search' diff --git a/app/collections/DocumentFiles.coffee b/app/collections/DocumentFiles.coffee index d78c41bd9..b4cf40ea1 100644 --- a/app/collections/DocumentFiles.coffee +++ b/app/collections/DocumentFiles.coffee @@ -1,4 +1,4 @@ -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' module.exports = class ModelFiles extends CocoCollection constructor: (model) -> diff --git a/app/collections/LeaderboardCollection.coffee b/app/collections/LeaderboardCollection.coffee index d00f16d1b..207ef6742 100644 --- a/app/collections/LeaderboardCollection.coffee +++ b/app/collections/LeaderboardCollection.coffee @@ -1,4 +1,4 @@ -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' LevelSession = require 'models/LevelSession' module.exports = class LeaderboardCollection extends CocoCollection diff --git a/app/collections/PatchesCollection.coffee b/app/collections/PatchesCollection.coffee index 456db1e42..f3f1a6d8e 100644 --- a/app/collections/PatchesCollection.coffee +++ b/app/collections/PatchesCollection.coffee @@ -1,5 +1,5 @@ PatchModel = require 'models/Patch' -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' module.exports = class PatchesCollection extends CocoCollection model: PatchModel diff --git a/app/collections/SimulatorsLeaderboardCollection.coffee b/app/collections/SimulatorsLeaderboardCollection.coffee index 733017cf4..341b3ef03 100644 --- a/app/collections/SimulatorsLeaderboardCollection.coffee +++ b/app/collections/SimulatorsLeaderboardCollection.coffee @@ -1,4 +1,4 @@ -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' User = require 'models/User' module.exports = class SimulatorsLeaderboardCollection extends CocoCollection diff --git a/app/lib/surface/Camera.coffee b/app/lib/surface/Camera.coffee index 766fe1f74..151d6d33a 100644 --- a/app/lib/surface/Camera.coffee +++ b/app/lib/surface/Camera.coffee @@ -164,8 +164,9 @@ module.exports = class Camera extends CocoClass target = {x: newTargetX, y:newTargetY} else target = @target - if not(newZoom >= MAX_ZOOM or newZoom <= Math.max(@minZoom, MIN_ZOOM)) - @zoomTo target, newZoom, 0 + newZoom = Math.min newZoom, MAX_ZOOM + newZoom = Math.max newZoom, MIN_ZOOM, @minZoom + @zoomTo target, newZoom, 0 onMouseDown: (e) -> return if @dragDisabled diff --git a/app/lib/surface/CocoSprite.coffee b/app/lib/surface/CocoSprite.coffee index 80b30ec09..3b1d3673d 100644 --- a/app/lib/surface/CocoSprite.coffee +++ b/app/lib/surface/CocoSprite.coffee @@ -447,6 +447,10 @@ module.exports = CocoSprite = class CocoSprite extends CocoClass scaleFactor = @thang.scaleFactor ? 1 pos.x *= @thang.scaleFactorX ? scaleFactor pos.y *= @thang.scaleFactorY ? scaleFactor + # We might need to do this, but I don't have a good test case yet. TODO: figure out. + #if prop isnt @registration + # pos.x *= if @getActionProp 'flipX' then -1 else 1 + # pos.y *= if @getActionProp 'flipY' then -1 else 1 pos createMarks: -> diff --git a/app/lib/surface/Label.coffee b/app/lib/surface/Label.coffee index 1427dbb75..ef8e742cd 100644 --- a/app/lib/surface/Label.coffee +++ b/app/lib/surface/Label.coffee @@ -45,8 +45,10 @@ module.exports = class Label extends CocoClass update: -> return unless @text - offset = @sprite.getOffset? (if @style is 'dialogue' then 'mouth' else 'aboveHead') + offset = @sprite.getOffset? (if @style in ['dialogue', 'say'] then 'mouth' else 'aboveHead') offset ?= x: 0, y: 0 # temp (if not CocoSprite) + rotation = @sprite.getRotation() + offset.x *= -1 if rotation >= 135 or rotation <= -135 @label.x = @background.x = @sprite.displayObject.x + offset.x @label.y = @background.y = @sprite.displayObject.y + offset.y null diff --git a/app/locale/ar.coffee b/app/locale/ar.coffee index bd0f57c94..4c9e45768 100644 --- a/app/locale/ar.coffee +++ b/app/locale/ar.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "العربية", englishDescription: "Arabi # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "العربية", englishDescription: "Arabi # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/bg.coffee b/app/locale/bg.coffee index 3205e568b..d7d719e24 100644 --- a/app/locale/bg.coffee +++ b/app/locale/bg.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "български език", englishDescri # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Нивото не може да бъде заредено: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "български език", englishDescri # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/ca.coffee b/app/locale/ca.coffee index 3589c67ee..5ebc41d95 100644 --- a/app/locale/ca.coffee +++ b/app/locale/ca.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Català", englishDescription: "Catalan", tr # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Català", englishDescription: "Catalan", tr # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/cs.coffee b/app/locale/cs.coffee index 6b7434341..f364611fb 100644 --- a/app/locale/cs.coffee +++ b/app/locale/cs.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "čeština", englishDescription: "Czech", tr # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Úroveň se nepodařilo otevřít: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "čeština", englishDescription: "Czech", tr # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/da.coffee b/app/locale/da.coffee index c468447fb..16ecc523f 100644 --- a/app/locale/da.coffee +++ b/app/locale/da.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Banen kunne ikke indlæses: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans new_article_title: "Opret en Ny Artikel" # new_thang_title: "Create a New Thang Type" new_level_title: "Opret en Ny Bane" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Søg Artikler Her" # thang_search_title: "Search Thang Types Here" level_search_title: "Søg Baner Her" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/de-AT.coffee b/app/locale/de-AT.coffee index d543cb3b7..d3b52c019 100644 --- a/app/locale/de-AT.coffee +++ b/app/locale/de-AT.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Deutsch (Österreich)", englishDescription: # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Deutsch (Österreich)", englishDescription: # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/de-CH.coffee b/app/locale/de-CH.coffee index b612ddf60..b7c1433c8 100644 --- a/app/locale/de-CH.coffee +++ b/app/locale/de-CH.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Deutsch (Schweiz)", englishDescription: "Ge # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Deutsch (Schweiz)", englishDescription: "Ge # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/de-DE.coffee b/app/locale/de-DE.coffee index a083f5d78..2ee2b9876 100644 --- a/app/locale/de-DE.coffee +++ b/app/locale/de-DE.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Deutsch (Deutschland)", englishDescription: # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Level konnte nicht geladen werden: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Deutsch (Deutschland)", englishDescription: new_article_title: "Erstelle einen neuen Artikel" # new_thang_title: "Create a New Thang Type" new_level_title: "Erstelle ein neues Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/de.coffee b/app/locale/de.coffee index 28a5824ae..c007bf189 100644 --- a/app/locale/de.coffee +++ b/app/locale/de.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Level konnte nicht geladen werden: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra new_article_title: "Erstelle einen neuen Artikel" # new_thang_title: "Create a New Thang Type" new_level_title: "Erstelle ein neues Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/el.coffee b/app/locale/el.coffee index ca846b61a..b71db34fb 100644 --- a/app/locale/el.coffee +++ b/app/locale/el.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "ελληνικά", englishDescription: "Gre # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Το επίπεδο δεν μπόρεσε να φορτωθεί: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "ελληνικά", englishDescription: "Gre # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/en-AU.coffee b/app/locale/en-AU.coffee index a3d06b8d0..5e46018b6 100644 --- a/app/locale/en-AU.coffee +++ b/app/locale/en-AU.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "English (AU)", englishDescription: "English # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "English (AU)", englishDescription: "English # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/en-GB.coffee b/app/locale/en-GB.coffee index a5c291760..6f7a728c3 100644 --- a/app/locale/en-GB.coffee +++ b/app/locale/en-GB.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "English (UK)", englishDescription: "English # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "English (UK)", englishDescription: "English # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/en-US.coffee b/app/locale/en-US.coffee index 7c7d9b170..44a20ac73 100644 --- a/app/locale/en-US.coffee +++ b/app/locale/en-US.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "English (US)", englishDescription: "English # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "English (US)", englishDescription: "English # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/en.coffee b/app/locale/en.coffee index 4696d8dae..3605d0557 100644 --- a/app/locale/en.coffee +++ b/app/locale/en.coffee @@ -204,6 +204,8 @@ candidate_top_skills: "Top Skills" candidate_years_experience: "Yrs Exp" candidate_last_updated: "Last Updated" + candidate_approved: "Us?" + candidate_active: "Them?" play_level: level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ new_article_title: "Create a New Article" new_thang_title: "Create a New Thang Type" new_level_title: "Create a New Level" + new_article_title_signup: "Sign Up to Create a New Article" + new_thang_title_signup: "Sign Up to Create a New Thang Type" + new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Search Articles Here" thang_search_title: "Search Thang Types Here" level_search_title: "Search Levels Here" - signup_to_create: "Sign Up to Create a New Content" read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/es-419.coffee b/app/locale/es-419.coffee index 65bf1688b..2111229f8 100644 --- a/app/locale/es-419.coffee +++ b/app/locale/es-419.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "español (América Latina)", englishDescrip # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "El nivel no puede ser cargado: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "español (América Latina)", englishDescrip # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/es-ES.coffee b/app/locale/es-ES.coffee index b735eaa3d..d7d4def91 100644 --- a/app/locale/es-ES.coffee +++ b/app/locale/es-ES.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis candidate_top_skills: "Mejores Habilidades" candidate_years_experience: "Años Exp" candidate_last_updated: "Última actualización" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "No se pudo cargar el nivel: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis new_article_title: "Crear un nuevo artículo" new_thang_title: "Crea un nuevo tipo de objeto" new_level_title: "Crear un nuevo nivel" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Buscar artículos aquí" thang_search_title: "Busca tipos de objetos aquí" level_search_title: "Buscar niveles aquí" - signup_to_create: "Regístrate para crear nuevo contenido" read_only_warning2: "Nota: no puedes guardar nada de lo que edites aqui porque no has iniciado sesión." article: diff --git a/app/locale/es.coffee b/app/locale/es.coffee index 74c4b2827..0f836ccc0 100644 --- a/app/locale/es.coffee +++ b/app/locale/es.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "No se pudo cargar el nivel: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/fa.coffee b/app/locale/fa.coffee index cb8f81869..a5cc5a33a 100644 --- a/app/locale/fa.coffee +++ b/app/locale/fa.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "فارسی", englishDescription: "Persian", # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "فارسی", englishDescription: "Persian", # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/fi.coffee b/app/locale/fi.coffee index 36e79fb4b..df3550223 100644 --- a/app/locale/fi.coffee +++ b/app/locale/fi.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "suomi", englishDescription: "Finnish", tran # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "suomi", englishDescription: "Finnish", tran # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/fr.coffee b/app/locale/fr.coffee index 75f6a2940..c8a756cb4 100644 --- a/app/locale/fr.coffee +++ b/app/locale/fr.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "français", englishDescription: "French", t # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Le niveau ne peut pas être chargé: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "français", englishDescription: "French", t new_article_title: "Créer un nouvel article" new_thang_title: "Créer un nouveau Type Thang" new_level_title: "Créer un nouveau niveau" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Rechercher dans les articles" thang_search_title: "Rechercher dans les types Thang" level_search_title: "Rechercher dans les niveaux" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/he.coffee b/app/locale/he.coffee index b96876c29..1492b60a8 100644 --- a/app/locale/he.coffee +++ b/app/locale/he.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew", # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew", # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/hi.coffee b/app/locale/hi.coffee index 3c3618c83..c6a71d71c 100644 --- a/app/locale/hi.coffee +++ b/app/locale/hi.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "मानक हिन्दी", englishDe # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "मानक हिन्दी", englishDe # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/hu.coffee b/app/locale/hu.coffee index 9455fa056..44a50b1ce 100644 --- a/app/locale/hu.coffee +++ b/app/locale/hu.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" candidate_last_updated: "Legutóbb napra-készre hozva" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "A pályát nem sikerült betölteni: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/id.coffee b/app/locale/id.coffee index 8c238a638..4d58529ad 100644 --- a/app/locale/id.coffee +++ b/app/locale/id.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Bahasa Indonesia", englishDescription: "Ind # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Bahasa Indonesia", englishDescription: "Ind # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/it.coffee b/app/locale/it.coffee index 5e030b82e..eafcc73f3 100644 --- a/app/locale/it.coffee +++ b/app/locale/it.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Il livello non può essere caricato: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/ja.coffee b/app/locale/ja.coffee index c738ad6c8..5dcf20952 100644 --- a/app/locale/ja.coffee +++ b/app/locale/ja.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "日本語", englishDescription: "Japanese", candidate_top_skills: "得意分野" candidate_years_experience: "経験年数" candidate_last_updated: "最終更新日時" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "レベルがロード出来ませんでした: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "日本語", englishDescription: "Japanese", # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/ko.coffee b/app/locale/ko.coffee index 67de792e5..b510d253e 100644 --- a/app/locale/ko.coffee +++ b/app/locale/ko.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "레벨 로딩 실패 : " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t new_article_title: "새로운 기사 작성" new_thang_title: "새로운 Thang type 시작" new_level_title: "새로운 레벨 시작" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "기사들은 여기에서 찾으세요" thang_search_title: "Thang 타입들은 여기에서 찾으세요" level_search_title: "레벨들은 여기에서 찾으세요" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/lt.coffee b/app/locale/lt.coffee index ee8a72a7b..486af93ae 100644 --- a/app/locale/lt.coffee +++ b/app/locale/lt.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "lietuvių kalba", englishDescription: "Lith # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "lietuvių kalba", englishDescription: "Lith # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/ms.coffee b/app/locale/ms.coffee index 13676820e..0f14f9371 100644 --- a/app/locale/ms.coffee +++ b/app/locale/ms.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Bahasa Melayu", englishDescription: "Bahasa # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Bahasa Melayu", englishDescription: "Bahasa # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/nb.coffee b/app/locale/nb.coffee index c724493c3..05ce4a578 100644 --- a/app/locale/nb.coffee +++ b/app/locale/nb.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Norsk Bokmål", englishDescription: "Norweg # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Nivået kunne ikke bli lastet: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Norsk Bokmål", englishDescription: "Norweg # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/nl-BE.coffee b/app/locale/nl-BE.coffee index f0de8e61d..cc4cdcc16 100644 --- a/app/locale/nl-BE.coffee +++ b/app/locale/nl-BE.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Nederlands (België)", englishDescription: candidate_top_skills: "Beste vaardigheden" candidate_years_experience: "Jaren ervaring" candidate_last_updated: "Laatst aangepast" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Level kon niet geladen worden: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Nederlands (België)", englishDescription: new_article_title: "Maak een Nieuw Artikel" new_thang_title: "Maak een Nieuw Thang Type" new_level_title: "Maak een Nieuw Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Zoek Artikels Hier" thang_search_title: "Zoek Thang Types Hier" level_search_title: "Zoek Levels Hier" - signup_to_create: "Registreer je om nieuwe content te maken" read_only_warning2: "Pas op, je kunt geen aanpassingen opslaan hier, want je bent niet ingelogd." article: diff --git a/app/locale/nl-NL.coffee b/app/locale/nl-NL.coffee index 1c4680d86..f67ddd3ad 100644 --- a/app/locale/nl-NL.coffee +++ b/app/locale/nl-NL.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Nederlands (Nederland)", englishDescription candidate_top_skills: "Beste vaardigheden" candidate_years_experience: "Jaren ervaring" candidate_last_updated: "Laatst aangepast" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Level kon niet geladen worden: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Nederlands (Nederland)", englishDescription new_article_title: "Maak een Nieuw Artikel" new_thang_title: "Maak een Nieuw Thang Type" new_level_title: "Maak een Nieuw Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Zoek Artikels Hier" thang_search_title: "Zoek Thang Types Hier" level_search_title: "Zoek Levels Hier" - signup_to_create: "Registreer je om nieuwe content te maken" read_only_warning2: "Pas op, je kunt geen aanpassingen opslaan hier, want je bent niet ingelogd." article: diff --git a/app/locale/nl.coffee b/app/locale/nl.coffee index f610f5de5..e9684d823 100644 --- a/app/locale/nl.coffee +++ b/app/locale/nl.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Nederlands", englishDescription: "Dutch", t candidate_top_skills: "Beste vaardigheden" candidate_years_experience: "Jaren ervaring" candidate_last_updated: "Laatst aangepast" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Level kon niet geladen worden: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Nederlands", englishDescription: "Dutch", t new_article_title: "Maak een Nieuw Artikel" new_thang_title: "Maak een Nieuw Thang Type" new_level_title: "Maak een Nieuw Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Zoek Artikels Hier" thang_search_title: "Zoek Thang Types Hier" level_search_title: "Zoek Levels Hier" - signup_to_create: "Registreer je om nieuwe content te maken" read_only_warning2: "Pas op, je kunt geen aanpassingen opslaan hier, want je bent niet ingelogd." article: diff --git a/app/locale/nn.coffee b/app/locale/nn.coffee index 9b46ee572..08a31f95d 100644 --- a/app/locale/nn.coffee +++ b/app/locale/nn.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Norwegian Nynorsk", englishDescription: "No # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Norwegian Nynorsk", englishDescription: "No # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/no.coffee b/app/locale/no.coffee index 0468a52f0..ac78416b1 100644 --- a/app/locale/no.coffee +++ b/app/locale/no.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Norsk", englishDescription: "Norwegian", tr # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Nivået kunne ikke bli lastet: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Norsk", englishDescription: "Norwegian", tr # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/pl.coffee b/app/locale/pl.coffee index 4d086f110..e0a1c67d5 100644 --- a/app/locale/pl.coffee +++ b/app/locale/pl.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "język polski", englishDescription: "Polish # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Nie udało się wczytać poziomu: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "język polski", englishDescription: "Polish new_article_title: "Stwórz nowy artykuł" new_thang_title: "Stwórz nowy typ obiektu" new_level_title: "Stwórz nowy poziom" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Przeszukaj artykuły" thang_search_title: "Przeszukaj typy obiektów" level_search_title: "Przeszukaj poziomy" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/pt-BR.coffee b/app/locale/pt-BR.coffee index aac12c77b..03f9377bc 100644 --- a/app/locale/pt-BR.coffee +++ b/app/locale/pt-BR.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "O estágio não pôde ser carregado: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "português do Brasil", englishDescription: new_article_title: "Criar um Novo Artigo" new_thang_title: "Criar um Novo Tipo de Thang" new_level_title: "Criar um Novo Nível" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Procurar Artigos Aqui" thang_search_title: "Procurar Tipos de Thang Aqui" level_search_title: "Procurar Níveis Aqui" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/pt-PT.coffee b/app/locale/pt-PT.coffee index 5f1766961..e8d4d8d89 100644 --- a/app/locale/pt-PT.coffee +++ b/app/locale/pt-PT.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "O nível não pôde ser carregado: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P new_article_title: "Criar um Novo Artigo" new_thang_title: "Criar um Novo Tipo de Thang" new_level_title: "Criar um Novo Nível" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Procurar Artigos Aqui" thang_search_title: "Procurar Tipos de Thang Aqui" level_search_title: "Procurar Níveis Aqui" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/pt.coffee b/app/locale/pt.coffee index a82ee92b6..98eee1992 100644 --- a/app/locale/pt.coffee +++ b/app/locale/pt.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "português", englishDescription: "Portugues # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "O estágio não pôde ser carregado: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "português", englishDescription: "Portugues # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/ro.coffee b/app/locale/ro.coffee index 57e83e5f8..7d9185685 100644 --- a/app/locale/ro.coffee +++ b/app/locale/ro.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "limba română", englishDescription: "Roman # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Nivelul nu a putut fi încărcat: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "limba română", englishDescription: "Roman new_article_title: "Crează un articol nou" new_thang_title: "Crează un nou tip de Thang" new_level_title: "Crează un nivel nou" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Caută articole aici" thang_search_title: "Caută tipuri de Thang aici" level_search_title: "Caută nivele aici" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/ru.coffee b/app/locale/ru.coffee index c1aafb04c..045c07e86 100644 --- a/app/locale/ru.coffee +++ b/app/locale/ru.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "русский", englishDescription: "Russi candidate_top_skills: "Лучшие навыки" candidate_years_experience: "Лет опыта" candidate_last_updated: "Последнее обновление" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Уровень не может быть загружен: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "русский", englishDescription: "Russi new_article_title: "Создать новую статью" new_thang_title: "Создать новый тип объектов" new_level_title: "Создать новый уровень" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Искать статьи" thang_search_title: "Искать типы объектов" level_search_title: "Искать уровни" - signup_to_create: "Авторизуйтесь для создания нового контента" read_only_warning2: "Примечание: вы не можете сохранять любые правки здесь, потому что вы не авторизованы." article: diff --git a/app/locale/sk.coffee b/app/locale/sk.coffee index 5100cddf3..9cac117e3 100644 --- a/app/locale/sk.coffee +++ b/app/locale/sk.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "slovenčina", englishDescription: "Slovak", # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "slovenčina", englishDescription: "Slovak", # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/sl.coffee b/app/locale/sl.coffee index bbd20d75a..b04e1faa7 100644 --- a/app/locale/sl.coffee +++ b/app/locale/sl.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "slovenščina", englishDescription: "Sloven # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "slovenščina", englishDescription: "Sloven # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/sr.coffee b/app/locale/sr.coffee index d58228ccb..bbf4d29cb 100644 --- a/app/locale/sr.coffee +++ b/app/locale/sr.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "српски", englishDescription: "Serbian # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Ниво није могао бити учитан: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "српски", englishDescription: "Serbian # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/sv.coffee b/app/locale/sv.coffee index efc862ffa..26cedd0de 100644 --- a/app/locale/sv.coffee +++ b/app/locale/sv.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Svenska", englishDescription: "Swedish", tr # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Nivån kunde inte laddas: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Svenska", englishDescription: "Swedish", tr new_article_title: "Skapa ny artikel" new_thang_title: "Skapa ny enhetstyp" new_level_title: "Skapa ny nivå" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "Sök artiklar här" thang_search_title: "Sök enhetstyper här" level_search_title: "Sök nivåer här" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/th.coffee b/app/locale/th.coffee index f0a4f0179..f41e7782b 100644 --- a/app/locale/th.coffee +++ b/app/locale/th.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "ไทย", englishDescription: "Thai", tra # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "ไทย", englishDescription: "Thai", tra # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/tr.coffee b/app/locale/tr.coffee index 0de56c4a0..4dc6a51a3 100644 --- a/app/locale/tr.coffee +++ b/app/locale/tr.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Türkçe", englishDescription: "Turkish", t # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Seviye yüklenemedi: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Türkçe", englishDescription: "Turkish", t # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" new_level_title: "Yeni Bir Seviye Oluştur" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" level_search_title: "Seviye ara" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." article: diff --git a/app/locale/uk.coffee b/app/locale/uk.coffee index e9e6221ba..94199d7ae 100644 --- a/app/locale/uk.coffee +++ b/app/locale/uk.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "українська мова", englishDesc # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "Неможливо завантажити рівень: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "українська мова", englishDesc # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/ur.coffee b/app/locale/ur.coffee index 5ef7e396d..f65a2917a 100644 --- a/app/locale/ur.coffee +++ b/app/locale/ur.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "اُردُو", englishDescription: "Urdu", # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "اُردُو", englishDescription: "Urdu", # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/vi.coffee b/app/locale/vi.coffee index 4c49d6373..07258d523 100644 --- a/app/locale/vi.coffee +++ b/app/locale/vi.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "Tiếng Việt", englishDescription: "Vietn # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "Tiếng Việt", englishDescription: "Vietn # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/zh-HANS.coffee b/app/locale/zh-HANS.coffee index 433a26034..a77f2f2c7 100644 --- a/app/locale/zh-HANS.coffee +++ b/app/locale/zh-HANS.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese candidate_top_skills: "高级技能" candidate_years_experience: "多年工作经验" candidate_last_updated: "最后一次更新" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "关卡不能载入: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese new_article_title: "创建一个新物品" new_thang_title: "创建一个新物品类型" new_level_title: "创建一个新关卡" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" article_search_title: "在这里搜索物品" thang_search_title: "在这里搜索物品类型" level_search_title: "在这里搜索关卡" - signup_to_create: "注册之后就可以创建一个新的关卡" read_only_warning2: "提示:你不能保存任何编辑,因为你没有登陆" article: diff --git a/app/locale/zh-HANT.coffee b/app/locale/zh-HANT.coffee index 8824ebd9b..bdcabb07b 100644 --- a/app/locale/zh-HANT.coffee +++ b/app/locale/zh-HANT.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" play_level: level_load_error: "載入關卡時發生錯誤: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/locale/zh.coffee b/app/locale/zh.coffee index 87003013f..884ab7de5 100644 --- a/app/locale/zh.coffee +++ b/app/locale/zh.coffee @@ -204,6 +204,8 @@ module.exports = nativeDescription: "中文", englishDescription: "Chinese", tra # candidate_top_skills: "Top Skills" # candidate_years_experience: "Yrs Exp" # candidate_last_updated: "Last Updated" +# candidate_approved: "Us?" +# candidate_active: "Them?" # play_level: # level_load_error: "Level could not be loaded: " @@ -370,10 +372,12 @@ module.exports = nativeDescription: "中文", englishDescription: "Chinese", tra # new_article_title: "Create a New Article" # new_thang_title: "Create a New Thang Type" # new_level_title: "Create a New Level" +# new_article_title_signup: "Sign Up to Create a New Article" +# new_thang_title_signup: "Sign Up to Create a New Thang Type" +# new_level_title_signup: "Sign Up to Create a New Level" # article_search_title: "Search Articles Here" # thang_search_title: "Search Thang Types Here" # level_search_title: "Search Levels Here" -# signup_to_create: "Sign Up to Create a New Content" # read_only_warning2: "Note: you can't save any edits here, because you're not logged in." # article: diff --git a/app/schemas/models/level.coffee b/app/schemas/models/level.coffee index d454d919b..0daf000a2 100644 --- a/app/schemas/models/level.coffee +++ b/app/schemas/models/level.coffee @@ -130,7 +130,7 @@ NoteGroupSchema = c.object {title: "Note Group", description: "A group of notes surface: c.object {title: "Surface", description: "Commands to issue to the Surface itself."}, focus: c.object {title: "Camera", description: "Focus the camera on a specific point on the Surface.", format:'viewport'}, - target: {anyOf: [PointSchema, thang, {type: 'null'}], title: "Target", description: "Where to center the camera view."} + target: {anyOf: [PointSchema, thang, {type: 'null'}], title: "Target", description: "Where to center the camera view.", default: {x:0, y:0}} zoom: {type: 'number', minimum: 0, exclusiveMinimum: true, maximum: 64, title: "Zoom", description: "What zoom level to use."} duration: {type:'number', minimum: 0, title: "Duration", description: "in ms"} bounds: c.array {title:'Boundary', maxItems: 2, minItems: 2, default:[{x:0,y:0}, {x:46, y:39}], format: 'bounds'}, PointSchema diff --git a/app/styles/account/settings.sass b/app/styles/account/settings.sass index fc6bfe4d0..9780b6c50 100644 --- a/app/styles/account/settings.sass +++ b/app/styles/account/settings.sass @@ -85,10 +85,6 @@ padding-top: 6px .treema-image-file - .btn:after - content: "Upload Picture" - margin-left: 20px - img display: block clear: both diff --git a/app/styles/editor/level/components_tab.sass b/app/styles/editor/level/components_tab.sass index c70a5f4d6..2903a25e3 100644 --- a/app/styles/editor/level/components_tab.sass +++ b/app/styles/editor/level/components_tab.sass @@ -1,6 +1,14 @@ #editor-level-components-tab-view h3 margin-top: 0 + @media screen and (max-width: 800px) + display: none + + .toggle + padding: 6px 8px + z-index: 11 + margin-top: 1px + margin-left: 2px .components-container position: absolute @@ -16,6 +24,9 @@ .treema-children .treema-row * cursor: pointer !important + + #components-treema + z-index: 11 .edit-component-container margin-left: 290px @@ -24,7 +35,15 @@ left: 0px top: 0 bottom: 0 - + @media screen and (max-width: 800px) + margin-left: 0px + + .nav-tabs + margin-left: 80px + + li + z-index: 11 + .treema-root position: absolute top: 35px @@ -37,3 +56,18 @@ position: absolute top: 0 right: 0 + left: auto + @media screen and (max-width: 800px) + left: 40px + top: 1px + bottom: auto + padding: 8px 10px + .text + display: block + @media screen and (max-width: 800px) + display: none + [class^='icon-'] + display: none + @media screen and (max-width: 800px) + display: block + diff --git a/app/styles/editor/level/edit.sass b/app/styles/editor/level/edit.sass index 02ff286c8..09bb03fe0 100644 --- a/app/styles/editor/level/edit.sass +++ b/app/styles/editor/level/edit.sass @@ -1,6 +1,6 @@ #editor-level-view &, #level-editor-top-nav - min-width: 1024px + // min-width: 1024px a font-family: helvetica, arial, sans serif @@ -13,7 +13,27 @@ $BG: rgba(228, 207, 140, 1.0) $NAVBG: #2f261d - + + .dropdown-menu + position: absolute + background-color: #FFF + border: 1px solid rgba(0, 0, 0, 0.15) + border-radius: 4px + box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.176) + left: 0px + right: auto + + li a + color: #555 + padding: 3px 20px + + .navbar-nav + float: left + margin: 0 + + > li + float: left + li.navbar-btn margin-right: 5px @@ -29,6 +49,11 @@ .navbar-right // not sure why bootstrap puts a big negative margin in, but this overrides it margin-right: 10px + float: right + + .dropdown-menu + right: 0px + left: auto // custom navbar styling .navbar-brand @@ -40,15 +65,46 @@ border-right: 2px solid lighten($NAVBG, 20%) background: lighten($NAVBG, 10%) margin-left: 20px + float: left .nav-tabs margin-left: 5px border-bottom: 0 !important + + li + float: left + display: block + + @media only screen and (max-width: 800px) + + li + float: none + display: none + z-index: 12 + + a + background-color: $BG + border-color: darken($BG, 50%) + border-width: 0px 1px + border-radius: 0px + + li:first-child > a + border-radius: 5px 5px 0px 0px + border-top-width: 1px + + li:last-child > a + border-radius: 0px 0px 5px 5px + border-bottom-width: 1px + + li.active + display: block + .active > a, .active > a:hover, .active > a:focus background-color: $BG !important border-color: darken($BG, 50%) border-bottom: 0 a padding: 7px 5px !important + .dropdown-menu a cursor: pointer &:hover diff --git a/app/styles/editor/level/scripts_tab.sass b/app/styles/editor/level/scripts_tab.sass index b0a308e59..a74bacdfa 100644 --- a/app/styles/editor/level/scripts_tab.sass +++ b/app/styles/editor/level/scripts_tab.sass @@ -1,5 +1,11 @@ #editor-level-scripts-tab-view + .toggle + z-index: 11 + margin-top: -10px + margin-left: -10px + float: left + .treema-script cursor: pointer @@ -9,9 +15,15 @@ bottom: 0 width: 250px overflow: scroll + @media screen and (max-width: 800px) + top: 40px + z-index: 11 #script-treema margin-left: 290px max-height: 100% overflow: scroll box-sizing: border-box + @media screen and (max-width: 800px) + margin-left: 30px + top: -50px diff --git a/app/styles/editor/level/settings_tab.sass b/app/styles/editor/level/settings_tab.sass index 81b0f8a97..613881b66 100644 --- a/app/styles/editor/level/settings_tab.sass +++ b/app/styles/editor/level/settings_tab.sass @@ -1,2 +1,5 @@ #editor-level-settings-tab-view color: black + + .treema-value img + width: 100% \ No newline at end of file diff --git a/app/styles/editor/level/systems_tab.sass b/app/styles/editor/level/systems_tab.sass index 0d1aa6b33..c74f79be9 100644 --- a/app/styles/editor/level/systems_tab.sass +++ b/app/styles/editor/level/systems_tab.sass @@ -1,6 +1,14 @@ #editor-level-systems-tab-view h3 margin-top: 0 + @media screen and (max-width: 800px) + display: none + + .toggle + padding: 6px 8px + z-index: 11 + margin-top: 0px + margin-left: 2px .systems-container position: absolute @@ -13,6 +21,9 @@ bottom: 0 width: 250px overflow: scroll + @media screen and (max-width: 800px) + z-index: 10 + bottom: -35px .treema-children .treema-row * cursor: pointer !important @@ -21,6 +32,21 @@ position: absolute bottom: 0 left: 170px + top: auto + @media screen and (max-width: 800px) + left: 40px + top: 1px + bottom: auto + padding: 8px 10px + + .text + display: block + @media screen and (max-width: 800px) + display: none + [class^='icon-'] + display: none + @media screen and (max-width: 800px) + display: block .edit-system-container margin-left: 290px @@ -29,6 +55,14 @@ left: 0px top: 0 bottom: 0 + @media screen and (max-width: 800px) + margin-left: 0px + + .nav-tabs + margin-left: 120px + + li + z-index: 11 .treema-root position: absolute @@ -42,3 +76,17 @@ position: absolute top: 0 right: 0 + left: auto + @media screen and (max-width: 800px) + left: 80px + top: 1px + bottom: auto + padding: 8px 10px + .text + display: block + @media screen and (max-width: 800px) + display: none + [class^='icon-'] + display: none + @media screen and (max-width: 800px) + display: block diff --git a/app/styles/editor/level/thangs_tab.sass b/app/styles/editor/level/thangs_tab.sass index 9edfe6958..e37db3036 100644 --- a/app/styles/editor/level/thangs_tab.sass +++ b/app/styles/editor/level/thangs_tab.sass @@ -1,5 +1,7 @@ @import "../../bootstrap/mixins" - + +$mobile: 1050px + #editor-level-thangs-tab-view $addPaletteIconColumns: 3 $extantThangsWidth: 300px @@ -8,12 +10,60 @@ $addPaletteIconMargin: 2px $addPaletteWidth: ($addPaletteIconWidth + 2 * $addPaletteIconPadding + 2 * $addPaletteIconMargin) * $addPaletteIconColumns + 20 + #toggle + display: none + position: absolute + z-index: 11 + left: -14px + @media screen and (max-width: $mobile) + display: block + + .toggle + left: 0 + + .toggle + display: none + float: none + z-index: 11 + position: absolute + right: -14px + z-index: 11 + margin: 0 + padding: 8px + @media screen and (max-width: $mobile) + display: block + + .thangs-column + background-color: #E4CF8C + + @media screen and (max-width: $mobile) + display: block + + h3 + @media screen and (max-width: $mobile) + display: none + + #all-thangs + display: block + @media screen and (max-width: $mobile) + display: none + .thangs-container width: $extantThangsWidth position: absolute left: 0 top: 0 bottom: 0 + z-index: 11 + @media screen and (max-width: $mobile) + width: auto + left: 18px + bottom: -18px + + .btn-group + margin: 0 + @media screen and (max-width: $mobile) + margin: 5px h3 margin: 0 -20px 0 0 @@ -25,6 +75,10 @@ right: 0 bottom: 0 overflow: scroll + margin: 0 + @media screen and (max-width: $mobile) + margin: 5px + top: 40px &.hide-except-Unit .treema-node @@ -62,11 +116,15 @@ .world-container margin-left: $extantThangsWidth margin-right: $addPaletteWidth + @media screen and (max-width: $mobile) + margin-left: 0 + margin-right: 0 padding: 0 20px box-sizing: border-box h3 margin: 0 -10px 0 0 + text-align: center .add-thangs-palette width: $addPaletteWidth @@ -75,6 +133,20 @@ right: 0 top: 0 bottom: 0 + @media screen and (max-width: $mobile) + display: none + right: 18px + z-index: 11 + width: $addPaletteWidth + 10 + bottom: -15px + //height: auto + //padding-bottom: 10px + + input + width: $addPaletteWidth + margin: 0 + @media screen and (max-width: $mobile) + margin: 0 5px #thangs-list position: relative @@ -83,6 +155,9 @@ bottom: 10px overflow: scroll height: 100% + margin: 0 + @media screen and (max-width: $mobile) + margin: 0 5px h3 margin: 0 -20px 0 0 diff --git a/app/styles/employers.sass b/app/styles/employers.sass index 6e64b44a0..d0da4c1b2 100644 --- a/app/styles/employers.sass +++ b/app/styles/employers.sass @@ -11,7 +11,7 @@ &:first-child // Make sure that "Developer #56" doesn't wrap onto second row min-width: 110px - + .tablesorter-headerAsc background-color: #cfc @@ -27,3 +27,10 @@ margin: 2px 0 display: inline-block text-transform: lowercase + + td:nth-child(3) select + min-width: 100px + td:nth-child(6) select + min-width: 50px + td:nth-child(7) select + min-width: 100px diff --git a/app/styles/play/level/hud.sass b/app/styles/play/level/hud.sass index b508a3158..bfcbccba7 100644 --- a/app/styles/play/level/hud.sass +++ b/app/styles/play/level/hud.sass @@ -125,7 +125,7 @@ background-position-x: -6 * $iconSize &.prop-label-icon-maxSpeed background-position-x: -7 * $iconSize - &.prop-label-icon-gold + &.prop-label-icon-gold, &.prop-label-icon-bountyGold background-position-x: -8 * $iconSize .prop-value.bar-prop diff --git a/app/styles/treema-ext.sass b/app/styles/treema-ext.sass index 9e59b7773..be549724c 100644 --- a/app/styles/treema-ext.sass +++ b/app/styles/treema-ext.sass @@ -18,20 +18,6 @@ border: 3px inset rgba(0, 100, 100, 0.2) box-sizing: border-box padding: 5px - -.treema-node a.btn - height: 17px - display: inline-block - position: relative - width: 20px - padding: 0 - float: left - margin-right: 2px - - i - position: absolute - top: 1px - left: 3px .treema-selection-map position: fixed diff --git a/app/templates/account/profile.jade b/app/templates/account/profile.jade index e2f5f32ea..3b72a5ead 100644 --- a/app/templates/account/profile.jade +++ b/app/templates/account/profile.jade @@ -62,7 +62,7 @@ block content div.long-description!= marked(profile.longDescription) if profile.work.length - h3.experience-header + h3.experience-header img.header-icon(src="/images/pages/account/profile/work.png", alt="") span(data-i18n="account_profile.work_experience") Work Experience each job in profile.work @@ -103,7 +103,8 @@ block content each project in profile.projects if project.name li - a(href=project.link) + if project.link && project.link.length && project.link != 'http://example.com' + a(href=project.link) if project.picture .project-image(style="background-image: url('/file/" + project.picture + "')") p= project.name diff --git a/app/templates/editor/level/components_tab.jade b/app/templates/editor/level/components_tab.jade index 9cd86545e..3d62ca0ce 100644 --- a/app/templates/editor/level/components_tab.jade +++ b/app/templates/editor/level/components_tab.jade @@ -1,9 +1,13 @@ .components-container h3(data-i18n="editor.level_component_tab_title") Current Components + button.navbar-toggle.toggle.btn-primary(type="button" data-toggle="collapse" data-target="#components-treema") + span.icon-list #components-treema .edit-component-container if me.isAdmin() - button(data-i18n="editor.level_component_btn_new").btn.btn-primary#create-new-component-button-no-select Create New Component + button.btn.btn-primary#create-new-component-button-no-select + span.icon-plus + span.text(data-i18n="editor.level_component_btn_new") Create New Component #editor-level-component-edit-view diff --git a/app/templates/editor/level/edit.jade b/app/templates/editor/level/edit.jade index 279b5086d..415ff9e20 100644 --- a/app/templates/editor/level/edit.jade +++ b/app/templates/editor/level/edit.jade @@ -15,8 +15,8 @@ block header li a(href="/editor/level") span.glyphicon-home.glyphicon + ul.nav.navbar-nav.nav-tabs - li.active a(href="#editor-level-thangs-tab-view", data-toggle="tab", data-i18n="editor.level_tab_thangs") Thangs li diff --git a/app/templates/editor/level/scripts_tab.jade b/app/templates/editor/level/scripts_tab.jade index 85618f619..b3b074f17 100644 --- a/app/templates/editor/level/scripts_tab.jade +++ b/app/templates/editor/level/scripts_tab.jade @@ -1,3 +1,6 @@ +button.navbar-toggle.toggle.btn-primary(type="button", data-toggle="collapse", data-target="#scripts-treema") + span.icon-list + #scripts-treema #script-treema diff --git a/app/templates/editor/level/systems_tab.jade b/app/templates/editor/level/systems_tab.jade index f09edb2c6..8cb062bac 100644 --- a/app/templates/editor/level/systems_tab.jade +++ b/app/templates/editor/level/systems_tab.jade @@ -1,11 +1,17 @@ .systems-container + button.navbar-toggle.toggle.btn-primary(type="button" data-toggle="collapse" data-target="#systems-treema") + span.icon-list h3(data-i18n="editor.level_systems_tab_title") Current Systems #systems-treema .edit-system-container if me.isAdmin() - button(data-i18n="editor.level_systems_btn_new").btn.btn-primary#create-new-system-button Create New System + button.btn.btn-primary#create-new-system-button + span.icon-file + span.text(data-i18n="editor.level_systems_btn_new") Create New System #editor-level-system-edit-view -button(data-i18n="editor.level_systems_btn_add").btn.btn-primary#add-system-button Add System +button.btn.btn-primary#add-system-button + span.icon-plus + span.text(data-i18n="editor.level_systems_btn_add") Add System \ No newline at end of file diff --git a/app/templates/editor/level/thangs_tab.jade b/app/templates/editor/level/thangs_tab.jade index c41c727b8..70dff55e0 100644 --- a/app/templates/editor/level/thangs_tab.jade +++ b/app/templates/editor/level/thangs_tab.jade @@ -1,4 +1,9 @@ -.thangs-container.thangs-column +div#toggle + button.navbar-toggle.toggle.btn-primary#thangs-container-toggle(type="button", data-toggle="collapse", data-target="#all-thangs") + span.icon-list +button.navbar-toggle.toggle.btn-primary#thangs-palette-toggle(type="button", data-toggle="collapse", data-target="#add-thangs-column") + span.icon-plus +.thangs-container.thangs-column#all-thangs h3(data-i18n="editor.level_tab_thangs_title") Current Thangs .btn-group(data-toggle="buttons-radio")#extant-thangs-filter button.btn.btn-primary(data-i18n="editor.level_tab_thangs_all") All diff --git a/app/templates/employers.jade b/app/templates/employers.jade index bfb2ca051..f69721ae4 100644 --- a/app/templates/employers.jade +++ b/app/templates/employers.jade @@ -27,8 +27,8 @@ block content th(data-i18n="employers.candidate_years_experience") Yrs Exp th(data-i18n="employers.candidate_last_updated") Last Updated if me.isAdmin() - th ✓? - th ಥ_ಥ + th(data-i18n="employers.candidate_us") Us? + th(data-i18n="employers.candidate_them") Them? tbody for candidate, index in candidates @@ -53,13 +53,13 @@ block content code= skill span td= profile.experience - td= moment(profile.updated).fromNow() + td(data-profile-age=(new Date() - new Date(profile.updated)) / 86400 / 1000)= moment(profile.updated).fromNow() if me.isAdmin() if candidate.get('jobProfileApproved') td ✓ else td ✗ if profile.active - td ᶘ ᵒᴥᵒᶅ + td ✓ else - td ⨂_⨂ \ No newline at end of file + td ✗ \ No newline at end of file diff --git a/app/templates/kinds/search.jade b/app/templates/kinds/search.jade index 77dce78db..2475710db 100644 --- a/app/templates/kinds/search.jade +++ b/app/templates/kinds/search.jade @@ -9,7 +9,7 @@ block content | #{currentEditor} if me.get('anonymous') - a.btn.btn-primary.open-modal-button(data-toggle="coco-modal", data-target="modal/signup", role="button", data-i18n="editor.signup_to_create") Sign Up to Create a New Content + a.btn.btn-primary.open-modal-button(data-toggle="coco-modal", data-target="modal/signup", role="button", data-i18n="#{currentNewSignup}") Sign Up to Create a New Content else a.btn.btn-primary.open-modal-button(href='#new-model-modal', role="button", data-toggle="modal", data-i18n="#{currentNew}") Create a New Something input#search(data-i18n="[placeholder]#{currentSearch}") diff --git a/app/treema-ext.coffee b/app/treema-ext.coffee index e377ad665..157d2e71c 100644 --- a/app/treema-ext.coffee +++ b/app/treema-ext.coffee @@ -1,5 +1,5 @@ CocoModel = require 'models/CocoModel' -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' {me} = require('lib/auth') locale = require 'locale/locale' @@ -28,7 +28,7 @@ class LiveEditingMarkup extends TreemaNode.nodeMap.ace valEl.append( $('
').append( $('') - .addClass('btn') + .addClass('btn btn-sm btn-primary') .click(=> filepicker.pick @onFileChosen) ) ) @@ -70,19 +70,19 @@ class SoundFileTreema extends TreemaNode.nodeMap.string buildValueForDisplay: (valEl) -> mimetype = "audio/#{@keyForParent}" - pickButton = $('') + pickButton = $('') .click(=> filepicker.pick {mimetypes:[mimetype]}, @onFileChosen) - playButton = $('') + playButton = $('') .click(@playFile) - stopButton = $('') + stopButton = $('') .click(@stopFile) dropdown = $('') dropdownButton = $('') - .addClass('btn dropdown-toggle') + .addClass('btn btn-primary btn-xs dropdown-toggle') .attr('href', '#') - .append($('')) + .append($('')) .dropdown() dropdown.append dropdownButton @@ -107,7 +107,7 @@ class SoundFileTreema extends TreemaNode.nodeMap.string if @data valEl.append(playButton) valEl.append(stopButton) - valEl.append(dropdown) if files.length and @canEdit() + valEl.append(dropdown) # if files.length and @canEdit() if @data path = @data.split('/') name = path[path.length-1] @@ -168,7 +168,7 @@ class ImageFileTreema extends TreemaNode.nodeMap.string buildValueForDisplay: (valEl) -> mimetype = 'image/*' - pickButton = $('') + pickButton = $(' Upload Picture') .click(=> filepicker.pick {mimetypes:[mimetype]}, @onFileChosen) valEl.append(pickButton) diff --git a/app/views/editor/level/add_thangs_view.coffee b/app/views/editor/level/add_thangs_view.coffee index 35e8917c9..9e471db82 100644 --- a/app/views/editor/level/add_thangs_view.coffee +++ b/app/views/editor/level/add_thangs_view.coffee @@ -1,7 +1,7 @@ View = require 'views/kinds/CocoView' add_thangs_template = require 'templates/editor/level/add_thangs' ThangType = require 'models/ThangType' -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' class ThangTypeSearchCollection extends CocoCollection url: '/db/thang.type/search?project=true' diff --git a/app/views/editor/level/edit.coffee b/app/views/editor/level/edit.coffee index 686ebd591..a4ec2c398 100644 --- a/app/views/editor/level/edit.coffee +++ b/app/views/editor/level/edit.coffee @@ -32,6 +32,7 @@ module.exports = class EditorLevelView extends View 'click #level-patch-button': 'startPatchingLevel' 'click #level-watch-button': 'toggleWatchLevel' 'click #pop-level-i18n-button': -> @level.populateI18N() + 'mouseup .nav-tabs > li a': 'toggleTab' constructor: (options, @levelID) -> super options @@ -133,3 +134,13 @@ module.exports = class EditorLevelView extends View button = @$el.find('#level-watch-button') @level.watch(button.find('.watch').is(':visible')) button.find('> span').toggleClass('secret') + + toggleTab: (e) -> + return unless $(document).width() <= 800 + li = $(e.target).closest('li') + if li.hasClass('active') + li.parent().find('li').show() + else + li.parent().find('li').hide() + li.show() + console.log li.hasClass('active') diff --git a/app/views/editor/level/system/add.coffee b/app/views/editor/level/system/add.coffee index a106e3d39..64caa52b4 100644 --- a/app/views/editor/level/system/add.coffee +++ b/app/views/editor/level/system/add.coffee @@ -2,7 +2,7 @@ View = require 'views/kinds/ModalView' template = require 'templates/editor/level/system/add' availableSystemTemplate = require 'templates/editor/level/system/available_system' LevelSystem = require 'models/LevelSystem' -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' class LevelSystemSearchCollection extends CocoCollection url: '/db/level_system/search' diff --git a/app/views/editor/level/thangs_tab_view.coffee b/app/views/editor/level/thangs_tab_view.coffee index 7dd3b1637..e21f84989 100644 --- a/app/views/editor/level/thangs_tab_view.coffee +++ b/app/views/editor/level/thangs_tab_view.coffee @@ -4,7 +4,7 @@ thangs_template = require 'templates/editor/level/thangs_tab' Level = require 'models/Level' ThangType = require 'models/ThangType' LevelComponent = require 'models/LevelComponent' -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' {isObjectID} = require 'models/CocoModel' Surface = require 'lib/surface/Surface' Thang = require 'lib/world/thang' @@ -50,6 +50,9 @@ module.exports = class ThangsTabView extends View 'click #extant-thangs-filter button': 'onFilterExtantThangs' 'click #delete': 'onDeleteClicked' 'click #duplicate': 'onDuplicateClicked' + 'click #thangs-container-toggle': 'toggleThangsContainer' + 'click #thangs-palette-toggle': 'toggleThangsPalette' + 'click .add-thang-palette-icon': 'toggleThangsPalette' shortcuts: 'esc': 'selectAddThang' @@ -112,7 +115,11 @@ module.exports = class ThangsTabView extends View $('#thangs-list').height('100%') thangsHeaderHeight = $('#thangs-header').height() oldHeight = $('#thangs-list').height() - $('#thangs-list').height(oldHeight - thangsHeaderHeight - 80) + if $(document).width() < 1050 + $('#thangs-list').height(oldHeight - thangsHeaderHeight - 40) + else + $('#thangs-list').height(oldHeight - thangsHeaderHeight - 80) + afterRender: -> return if @startsLoading @@ -450,6 +457,14 @@ module.exports = class ThangsTabView extends View thang = @selectedExtantThang.spriteName e.target = $(".add-thang-palette-icon[data-thang-type='" + thang + "']").get 0 @selectAddThang e + + toggleThangsContainer: (e) -> + $('#all-thangs').toggle() + + toggleThangsPalette: (e) -> + $('#add-thangs-column').toggle() + @onWindowResize e + class ThangsNode extends TreemaNode.nodeMap.array valueClass: 'treema-array-replacement' diff --git a/app/views/editor/level/treema_nodes.coffee b/app/views/editor/level/treema_nodes.coffee index fda09a79b..f968e2446 100644 --- a/app/views/editor/level/treema_nodes.coffee +++ b/app/views/editor/level/treema_nodes.coffee @@ -1,7 +1,7 @@ WorldSelectModal = require './modal/world_select' ThangType = require '/models/ThangType' -makeButton = -> $('') +makeButton = -> $('') shorten = (f) -> parseFloat(f.toFixed(1)) WIDTH = 1848 @@ -13,11 +13,11 @@ module.exports.WorldPointNode = class WorldPointNode extends TreemaNode.nodeMap. buildValueForDisplay: (valEl) -> super(valEl) - valEl.prepend(makeButton()) + valEl.find('.treema-shortened').prepend(makeButton()) buildValueForEditing: (valEl) -> super(valEl) - valEl.prepend(makeButton()) + valEl.find('.treema-shortened').prepend(makeButton()) onClick: (e) -> btn = $(e.target).closest('.treema-map-button') @@ -44,11 +44,11 @@ class WorldRegionNode extends TreemaNode.nodeMap.object buildValueForDisplay: (valEl) -> super(valEl) - valEl.prepend(makeButton()) + valEl.find('.treema-shortened').prepend(makeButton()) buildValueForEditing: (valEl) -> super(valEl) - valEl.prepend(makeButton()) + valEl.find('.treema-shortened').prepend(makeButton()) onClick: (e) -> btn = $(e.target).closest('.treema-map-button') @@ -80,11 +80,11 @@ module.exports.WorldViewportNode = class WorldViewportNode extends TreemaNode.no buildValueForDisplay: (valEl) -> super(valEl) - valEl.prepend(makeButton()) + valEl.find('.treema-shortened').prepend(makeButton()) buildValueForEditing: (valEl) -> super(valEl) - valEl.prepend(makeButton()) + valEl.find('.treema-shortened').prepend(makeButton()) onClick: (e) -> btn = $(e.target).closest('.treema-map-button') @@ -121,11 +121,11 @@ module.exports.WorldBoundsNode = class WorldBoundsNode extends TreemaNode.nodeMa buildValueForDisplay: (valEl) -> super(valEl) - valEl.prepend(makeButton()) + valEl.find('.treema-shortened').prepend(makeButton()) buildValueForEditing: (valEl) -> super(valEl) - valEl.prepend(makeButton()) + valEl.find('.treema-shortened').prepend(makeButton()) onClick: (e) -> btn = $(e.target).closest('.treema-map-button') diff --git a/app/views/employers_view.coffee b/app/views/employers_view.coffee index cdbf8f074..19c57aed2 100644 --- a/app/views/employers_view.coffee +++ b/app/views/employers_view.coffee @@ -2,7 +2,7 @@ View = require 'views/kinds/RootView' template = require 'templates/employers' app = require 'application' User = require 'models/User' -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' EmployerSignupView = require 'views/modal/employer_signup_modal' class CandidatesCollection extends CocoCollection @@ -56,27 +56,105 @@ module.exports = class EmployersView extends View even: "" # odd row zebra striping odd: "" # even row zebra striping + + # e = exact text from cell + # n = normalized value returned by the column parser + # f = search filter input value + # i = column index + # $r = ??? + filterSelectExactMatch = (e, n, f, i, $r) -> e is f + # call the tablesorter plugin and apply the uitheme widget - @$el.find(".tablesorter").tablesorter( + @$el.find(".tablesorter").tablesorter theme: "bootstrap" widthFixed: true headerTemplate: "{content} {icon}" + textSorter: + 6: (a, b, direction, column, table) -> + days = [] + for s in [a, b] + n = parseInt s + n = 0 unless _.isNumber n + for [duration, factor] in [ + [/second/i, 1 / (86400 * 1000)] + [/minute/i, 1 / 1440] + [/hour/i, 1 / 24] + [/week/i, 7] + [/month/i, 30.42] + [/year/i, 365.2425] + ] + if duration.test s + n *= factor + break + if /^in /i.test s + n *= -1 + days.push n + days[0] - days[1] + sortList: [[6, 0]] # widget code contained in the jquery.tablesorter.widgets.js file # use the zebra stripe widget if you plan on hiding any rows (filter widget) - widgets: [ - "uitheme" - "zebra" - ] + widgets: ["uitheme", "zebra", "filter"] widgetOptions: # using the default zebra striping class name, so it actually isn't included in the theme variable above # this is ONLY needed for bootstrap theming if you are using the filter widget, because rows are hidden - zebra: [ - "even" - "odd" - ] - # reset filters button + zebra: ["even", "odd"] + + # extra css class applied to the table row containing the filters & the inputs within that row + filter_cssFilter: "" + + # If there are child rows in the table (rows with class name from "cssChildRow" option) + # and this option is true and a match is found anywhere in the child row, then it will make that row + # visible; default is false + filter_childRows: false + + # if true, filters are collapsed initially, but can be revealed by hovering over the grey bar immediately + # below the header row. Additionally, tabbing through the document will open the filter row when an input gets focus + filter_hideFilters: false + + # Set this option to false to make the searches case sensitive + filter_ignoreCase: true + + # jQuery selector string of an element used to reset the filters filter_reset: ".reset" - ) + + # Use the $.tablesorter.storage utility to save the most recent filters + filter_saveFilters: true + + # Delay in milliseconds before the filter widget starts searching; This option prevents searching for + # every character while typing and should make searching large tables faster. + filter_searchDelay: 150 + + # Set this option to true to use the filter to find text from the start of the column + # So typing in "a" will find "albert" but not "frank", both have a's; default is false + filter_startsWith: false + + filter_functions: + 2: + "Full-time": filterSelectExactMatch + "Part-time": filterSelectExactMatch + "Contracting": filterSelectExactMatch + "Remote": filterSelectExactMatch + "Internship": filterSelectExactMatch + 5: + "0-1": (e, n, f, i, $r) -> n <= 1 + "2-5": (e, n, f, i, $r) -> 2 <= n <= 5 + "6+": (e, n, f, i, $r) -> 6 <= n + 6: + "Last day": (e, n, f, i, $r) -> + days = parseFloat $($r.find('td')[i]).data('profile-age') + days <= 1 + "Last week": (e, n, f, i, $r) -> + days = parseFloat $($r.find('td')[i]).data('profile-age') + days <= 7 + "Last 4 weeks": (e, n, f, i, $r) -> + days = parseFloat $($r.find('td')[i]).data('profile-age') + days <= 28 + 7: + "✓": filterSelectExactMatch + "✗": filterSelectExactMatch + 8: + "✓": filterSelectExactMatch + "✗": filterSelectExactMatch onCandidateClicked: (e) -> id = $(e.target).closest('tr').data('candidate-id') diff --git a/app/views/kinds/CocoView.coffee b/app/views/kinds/CocoView.coffee index 5e9275ca3..2def82c99 100644 --- a/app/views/kinds/CocoView.coffee +++ b/app/views/kinds/CocoView.coffee @@ -48,6 +48,7 @@ class CocoView extends Backbone.View @subviews = {} @listenToShortcuts() @updateProgressBar = _.debounce @updateProgressBar, 100 + @toggleModal = _.debounce @toggleModal, 100 # Backbone.Mediator handles subscription setup/teardown automatically super options @@ -207,7 +208,6 @@ class CocoView extends Backbone.View # Modals toggleModal: (e) -> - return if visibleModal if $(e.currentTarget).prop('target') is '_blank' return true # special handler for opening modals that are dynamically loaded, rather than static in the page. It works (or should work) like Bootstrap's modals, except use coco-modal for the data-toggle value. diff --git a/app/views/kinds/SearchView.coffee b/app/views/kinds/SearchView.coffee index 9ce303b7c..0b1a2e979 100644 --- a/app/views/kinds/SearchView.coffee +++ b/app/views/kinds/SearchView.coffee @@ -32,14 +32,17 @@ module.exports = class SearchView extends View when 'Level' context.currentEditor = 'editor.level_title' context.currentNew = 'editor.new_level_title' + context.currentNewSignup = 'editor.new_level_title_signup' context.currentSearch = 'editor.level_search_title' when 'Thang Type' context.currentEditor = 'editor.thang_title' context.currentNew = 'editor.new_thang_title' + context.currentNewSignup = 'editor.new_thang_title_signup' context.currentSearch = 'editor.thang_search_title' when 'Article' context.currentEditor = 'editor.article_title' context.currentNew = 'editor.new_article_title' + context.currentNewSignup = 'editor.new_article_title_signup' context.currentSearch = 'editor.article_search_title' @$el.i18n() context diff --git a/app/views/play/ladder/ladder_tab.coffee b/app/views/play/ladder/ladder_tab.coffee index cc88ed474..9d4eeff16 100644 --- a/app/views/play/ladder/ladder_tab.coffee +++ b/app/views/play/ladder/ladder_tab.coffee @@ -2,7 +2,7 @@ CocoView = require 'views/kinds/CocoView' CocoClass = require 'lib/CocoClass' Level = require 'models/Level' LevelSession = require 'models/LevelSession' -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' User = require 'models/User' LeaderboardCollection = require 'collections/LeaderboardCollection' {teamDataFromLevel} = require './utils' diff --git a/app/views/play/ladder_view.coffee b/app/views/play/ladder_view.coffee index e8781c685..4d356a5d6 100644 --- a/app/views/play/ladder_view.coffee +++ b/app/views/play/ladder_view.coffee @@ -1,7 +1,7 @@ RootView = require 'views/kinds/RootView' Level = require 'models/Level' LevelSession = require 'models/LevelSession' -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' {teamDataFromLevel} = require './ladder/utils' {me} = require 'lib/auth' application = require 'application' diff --git a/app/views/play/level/hud_view.coffee b/app/views/play/level/hud_view.coffee index 581a5fb2f..4b2319bfe 100644 --- a/app/views/play/level/hud_view.coffee +++ b/app/views/play/level/hud_view.coffee @@ -249,7 +249,7 @@ module.exports = class HUDView extends View return null # included in the bar context = prop: prop - hasIcon: prop in ["health", "pos", "target", "inventory", "gold", "visualRange", "attackDamage", "attackRange", "maxSpeed"] + hasIcon: prop in ["health", "pos", "target", "inventory", "gold", "bountyGold", "visualRange", "attackDamage", "attackRange", "maxSpeed"] hasBar: prop in ["health"] $(prop_template(context)) diff --git a/app/views/play/level/modal/docs_modal.coffee b/app/views/play/level/modal/docs_modal.coffee index 88336fb64..294a9ae3c 100644 --- a/app/views/play/level/modal/docs_modal.coffee +++ b/app/views/play/level/modal/docs_modal.coffee @@ -24,7 +24,6 @@ module.exports = class DocsModal extends View general = (article.attributes for article in general when article) @docs = specific.concat(general) - marked.setOptions {gfm: true, sanitize: false, smartLists: true, breaks: false} @docs = $.extend(true, [], @docs) doc.html = marked(utils.i18n doc, 'body') for doc in @docs doc.name = (utils.i18n doc, 'name') for doc in @docs diff --git a/app/views/play/level/tome/spell_palette_entry_view.coffee b/app/views/play/level/tome/spell_palette_entry_view.coffee index ba6665931..5a610d984 100644 --- a/app/views/play/level/tome/spell_palette_entry_view.coffee +++ b/app/views/play/level/tome/spell_palette_entry_view.coffee @@ -6,9 +6,6 @@ filters = require 'lib/image_filter' {downTheChain} = require 'lib/world/world_utils' window.Vector = require 'lib/world/vector' # So we can document it -# If we use marked somewhere else, we'll have to make sure to preserve options -marked.setOptions {gfm: true, sanitize: false, smartLists: true, breaks: true} - safeJSONStringify = (input, maxDepth) -> recursion = (input, path, depth) -> output = {} diff --git a/app/views/play/level/tome/spell_view.coffee b/app/views/play/level/tome/spell_view.coffee index 0ba79d36a..6d1b81aa6 100644 --- a/app/views/play/level/tome/spell_view.coffee +++ b/app/views/play/level/tome/spell_view.coffee @@ -107,8 +107,8 @@ module.exports = class SpellView extends View name: 'end-current-script' bindKey: {win: 'Shift-Space', mac: 'Shift-Space'} passEvent: true # https://github.com/ajaxorg/ace/blob/master/lib/ace/keyboard/keybinding.js#L114 - # No easy way to selectively cancel shift+space, since we don't get access to the event. - # Maybe we could temporarily set ourselves to read-only if we somehow know that a script is active? + # No easy way to selectively cancel shift+space, since we don't get access to the event. + # Maybe we could temporarily set ourselves to read-only if we somehow know that a script is active? exec: -> Backbone.Mediator.publish 'level:shift-space-pressed' addCommand name: 'end-all-scripts' @@ -158,7 +158,7 @@ module.exports = class SpellView extends View @firepad?.dispose() createFirepad: -> - # load from firebase or the original source if there's nothing there + # load from firebase or the original source if there's nothing there return if @firepadLoading @eventsSuppressed = true @loaded = false @@ -327,29 +327,32 @@ module.exports = class SpellView extends View codeIsAsCast = castAether and not hasChanged aether = castAether if codeIsAsCast return if not needsUpdate and aether is @displayedAether - + # Now that that's figured out, perform the update. # The web worker Aether won't track state, so don't have to worry about updating it + finishUpdatingAether = (aether) => + @displayAether aether + @lastUpdatedAetherSpellThang = @spellThang + @guessWhetherFinished aether if fromCodeChange + @clearAetherDisplay() - workerMessage = - function: "transpile" - spellKey: @spell.spellKey - source: source - - @worker.addEventListener "message", (e) => - workerData = JSON.parse e.data - if workerData.function is "transpile" and workerData.spellKey is @spell.spellKey - @worker.removeEventListener("message",arguments.callee, false) - aether.problems = workerData.problems - aether.raw = source - @displayAether aether - @lastUpdatedAetherSpellThang = @spellThang - @guessWhetherFinished aether if fromCodeChange - @worker.postMessage JSON.stringify(workerMessage) - #aether.transpile source if codeHasChangedSignificantly and not codeIsAsCast - #@displayAether aether - #@lastUpdatedAetherSpellThang = @spellThang - #@guessWhetherFinished aether if fromCodeChange + if codeHasChangedSignificantly and not codeIsAsCast + workerMessage = + function: "transpile" + spellKey: @spell.spellKey + source: source + + @worker.addEventListener "message", (e) => + workerData = JSON.parse e.data + if workerData.function is "transpile" and workerData.spellKey is @spell.spellKey + @worker.removeEventListener("message",arguments.callee, false) + aether.problems = workerData.problems + aether.raw = source + finishUpdatingAether(aether) + @worker.postMessage JSON.stringify(workerMessage) + else + finishUpdatingAether(aether) + clearAetherDisplay: -> problem.destroy() for problem in @problems @@ -397,12 +400,12 @@ module.exports = class SpellView extends View #console.log "finished?", valid, endOfLine, beginningOfLine, cursorPosition, currentLine.length, aether, new Date() - 0, currentLine if valid and endOfLine or beginningOfLine @recompile() - #console.log "recompile now!" - #else if not valid - # # if this works, we can get rid of all @recompileValid logic - # console.log "not valid, but so we'll wait to do it in", @autocastDelay + "ms" - #else - # console.log "valid but not at end of line; recompile in", @autocastDelay + "ms" + #console.log "recompile now!" + #else if not valid + # # if this works, we can get rid of all @recompileValid logic + # console.log "not valid, but so we'll wait to do it in", @autocastDelay + "ms" + #else + # console.log "valid but not at end of line; recompile in", @autocastDelay + "ms" onSpellChanged: (e) -> @spellHasChanged = true @@ -438,7 +441,7 @@ module.exports = class SpellView extends View aether = e.world.userCodeMap[thangID]?[@spell.name] # Might not be there if this is a new Programmable Thang. spellThang.castAether = aether spellThang.aether = @spell.createAether thang - #console.log thangID, @spell.spellKey, "ran", aether.metrics.callsExecuted, "times over", aether.metrics.statementsExecuted, "statements, with max recursion depth", aether.metrics.maxDepth, "and full flow/metrics", aether.metrics, aether.flow + #console.log thangID, @spell.spellKey, "ran", aether.metrics.callsExecuted, "times over", aether.metrics.statementsExecuted, "statements, with max recursion depth", aether.metrics.maxDepth, "and full flow/metrics", aether.metrics, aether.flow @spell.transpile() @updateAether false, false @@ -489,7 +492,7 @@ module.exports = class SpellView extends View break _.last(executed).push state executedRows[state.range[0].row] = true - #state.executing = true if state.userInfo?.time is @thang.world.age # no work + #state.executing = true if state.userInfo?.time is @thang.world.age # no work currentCallIndex ?= callNumber - 1 #console.log "got call index", currentCallIndex, "for time", @thang.world.age, "out of", states.length @@ -591,7 +594,7 @@ module.exports = class SpellView extends View @ace.setDisplayIndentGuides aceConfig.indentGuides # default false @ace.setShowInvisibles aceConfig.invisibles # default false @ace.setKeyboardHandler @keyBindings[aceConfig.keyBindings ? 'default'] - # @aceSession.setMode @editModes[aceConfig.language ? 'javascript'] + # @aceSession.setMode @editModes[aceConfig.language ? 'javascript'] onChangeLanguage: (e) -> aceConfig = me.get('aceConfig') ? {} @@ -600,7 +603,7 @@ module.exports = class SpellView extends View dismiss: -> @spell.hasChangedSignificantly @getSource(), null, (hasChanged) => @recompile() if hasChanged - + destroy: -> $(@ace?.container).find('.ace_gutter').off 'click', '.ace_error, .ace_warning, .ace_info', @onAnnotationClick diff --git a/app/views/play/level/tome/tome_view.coffee b/app/views/play/level/tome/tome_view.coffee index 7ae29a53f..f3486df49 100644 --- a/app/views/play/level/tome/tome_view.coffee +++ b/app/views/play/level/tome/tome_view.coffee @@ -73,7 +73,7 @@ module.exports = class TomeView extends View delete @options.thangs onNewWorld: (e) -> - thangs = _.filter e.world.thangs, 'isSelectable' + thangs = _.filter e.world.thangs, 'inThangList' programmableThangs = _.filter thangs, 'isProgrammable' @createSpells programmableThangs, e.world @thangList.adjustThangs @spells, thangs diff --git a/app/views/play_view.coffee b/app/views/play_view.coffee index e515fbf6f..38e70ebd1 100644 --- a/app/views/play_view.coffee +++ b/app/views/play_view.coffee @@ -1,7 +1,7 @@ View = require 'views/kinds/RootView' template = require 'templates/play' LevelSession = require 'models/LevelSession' -CocoCollection = require 'models/CocoCollection' +CocoCollection = require 'collections/CocoCollection' class LevelSessionsCollection extends CocoCollection url: '' diff --git a/server/commons/Handler.coffee b/server/commons/Handler.coffee index 9c6b165e0..851dd4268 100644 --- a/server/commons/Handler.coffee +++ b/server/commons/Handler.coffee @@ -332,7 +332,7 @@ module.exports = class Handler res = tv4.validateMultiple(input, @jsonSchema) res - @isID: (id) -> _.isString(id) and id.length is 24 and id.match(/[a-z0-9]/gi)?.length is 24 + @isID: (id) -> _.isString(id) and id.length is 24 and id.match(/[a-f0-9]/gi)?.length is 24 getDocumentForIdOrSlug: (idOrSlug, done) -> idOrSlug = idOrSlug+'' diff --git a/server/routes/db.coffee b/server/routes/db.coffee index beb120573..9b31e2537 100644 --- a/server/routes/db.coffee +++ b/server/routes/db.coffee @@ -6,6 +6,7 @@ mongoose = require 'mongoose' module.exports.setup = (app) -> # This is hacky and should probably get moved somewhere else, I dunno app.get '/db/cla.submissions', (req, res) -> + return errors.unauthorized(res, "You must be an admin to view that information") unless req.user?.isAdmin() res.setHeader('Content-Type', 'application/json') collection = mongoose.connection.db.collection 'cla.submissions', (err, collection) -> return log.error "Couldn't fetch CLA submissions because #{err}" if err diff --git a/server/routes/file.coffee b/server/routes/file.coffee index f01f635e3..1cc0f73d7 100644 --- a/server/routes/file.coffee +++ b/server/routes/file.coffee @@ -83,8 +83,7 @@ filePost = (req, res) -> saveURL = (req, res) -> options = createPostOptions(req) - force = req.user.isAdmin() and req.body.force - checkExistence options, res, force, (err) -> + checkExistence options, req, res, req.body.force, (err) -> return errors.serverError(res) if err writestream = Grid.gfs.createWriteStream(options) request(req.body.url).pipe(writestream) @@ -92,8 +91,7 @@ saveURL = (req, res) -> saveFile = (req, res) -> options = createPostOptions(req) - force = req.user.isAdmin() and req.body.force - checkExistence options, res, force, (err) -> + checkExistence options, req, res, req.body.force, (err) -> return if err writestream = Grid.gfs.createWriteStream(options) f = req.files[req.body.postName] @@ -103,9 +101,8 @@ saveFile = (req, res) -> savePNG = (req, res) -> options = createPostOptions(req) - force = req.user.isAdmin() and req.body.force - checkExistence options, res, force, (err) -> - return errors.serverError(res) if err + checkExistence options, req, res, req.body.force, (err) -> + return if err writestream = Grid.gfs.createWriteStream(options) img = new Buffer(req.body.b64png, 'base64') streamBuffers = require 'stream-buffers' @@ -113,21 +110,32 @@ savePNG = (req, res) -> myReadableStreamBuffer.put(img) myReadableStreamBuffer.pipe(writestream) handleStreamEnd(res, writestream) + +userCanEditFile = (user=null, file=null) -> + # no user means 'anyone'. No file means 'any file' + return false unless user + return true if user.isAdmin() + return false unless file + return true if file.metadata.creator is user.id + return false -checkExistence = (options, res, force, done) -> +checkExistence = (options, req, res, force, done) -> q = { filename: options.filename 'metadata.path': options.metadata.path } Grid.gfs.collection('media').find(q).toArray (err, files) -> - if files.length and not force - errors.conflict(res) + file = files[0] + if file and ((not userCanEditFile(req.user, file) or (not force))) + errors.conflict(res, {canForce:userCanEditFile(req.user, file)}) done(true) - else if files.length - q = { _id: files[0]._id } + else if file + q = { _id: file._id } q.root = 'media' Grid.gfs.remove q, (err) -> - return errors.serverError(res) if err + if err + errors.serverError(res) + return done(true) done() else done()