From e06fa1dc74532463d64060e2ba21799848a8e47e Mon Sep 17 00:00:00 2001 From: ryderr Date: Tue, 30 Sep 2014 17:46:54 -0400 Subject: stylez --- views/projects/layouts-modal.ejs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'views/projects/layouts-modal.ejs') diff --git a/views/projects/layouts-modal.ejs b/views/projects/layouts-modal.ejs index 34dc9af..24a83b7 100644 --- a/views/projects/layouts-modal.ejs +++ b/views/projects/layouts-modal.ejs @@ -33,7 +33,7 @@ X
-

Choose Room Template

+

Choose Room Template

-- cgit v1.2.3-70-g09d2 From 2b658ce6a00dc4f20ea77a50b8cca61f56629a71 Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Wed, 8 Oct 2014 16:14:24 -0400 Subject: templates-list --- public/assets/javascripts/ui/site/LayoutsModal.js | 3 ++- public/assets/stylesheets/app.css | 8 ++++---- views/projects/layouts-modal.ejs | 6 ++++++ 3 files changed, 12 insertions(+), 5 deletions(-) (limited to 'views/projects/layouts-modal.ejs') diff --git a/public/assets/javascripts/ui/site/LayoutsModal.js b/public/assets/javascripts/ui/site/LayoutsModal.js index ef6a36c..24b65e3 100644 --- a/public/assets/javascripts/ui/site/LayoutsModal.js +++ b/public/assets/javascripts/ui/site/LayoutsModal.js @@ -3,6 +3,7 @@ var LayoutsIndex = View.extend({ initialize: function(){ this.$templates = this.$(".templates") + this.$templatesList = this.$(".templates-list") this.$noTemplates = this.$(".no-templates") this.$form = this.$("form") }, @@ -19,7 +20,7 @@ var LayoutsIndex = View.extend({ this.$form.hide() this.$noTemplates.show() } - this.$templates.children("span").remove() + this.$templatesList.empty() data.forEach(function(room){ var $span = $("") $span.data("slug", room.slug) diff --git a/public/assets/stylesheets/app.css b/public/assets/stylesheets/app.css index a8f8e51..0fd0954 100755 --- a/public/assets/stylesheets/app.css +++ b/public/assets/stylesheets/app.css @@ -378,12 +378,12 @@ iframe.embed { .room .images[data-mediacount='1'] img:nth-child(1) { left: 20%; top: 20%; } -.room .images[data-mediacount='2'] img:nth-child(1) { left: 51%; bottom: 0%; width: auto; height: 30%; } -.room .images[data-mediacount='2'] img:nth-child(2) { right: 51%; bottom: 0%; width: auto; height: 30%; } +.room .images[data-mediacount='2'] img:nth-child(1) { left: 51%; bottom: 0%; width: auto; height: 40%; } +.room .images[data-mediacount='2'] img:nth-child(2) { right: 51%; bottom: 50%; width: auto; height: 40%; } .room .images[data-mediacount='3'] img:nth-child(1) { right: 51%; bottom: 41%; } -.room .images[data-mediacount='3'] img:nth-child(2) { left: 51%; bottom: 0%; width:auto; height:30%;} -.room .images[data-mediacount='3'] img:nth-child(3) { right: 51%; top: 61%; } +.room .images[data-mediacount='3'] img:nth-child(2) { right: 51%; top: 61%; } +.room .images[data-mediacount='3'] img:nth-child(3) { left: 51%; bottom: 0%; width:auto; height:30%;} .room .images[data-mediacount='4'] img:nth-child(1) { right: 51%; bottom: 41%; } .room .images[data-mediacount='4'] img:nth-child(2) { left: 51%; bottom: 61%; } diff --git a/views/projects/layouts-modal.ejs b/views/projects/layouts-modal.ejs index 24a83b7..8754617 100644 --- a/views/projects/layouts-modal.ejs +++ b/views/projects/layouts-modal.ejs @@ -4,6 +4,8 @@

Edit Room Layouts

+
+
There are no room layouts available. Please create a new one. @@ -20,6 +22,8 @@

Your Projects

+
+
@@ -35,6 +39,8 @@

Choose Room Template

+
+
There are no room layouts available. Please create a new one. -- cgit v1.2.3-70-g09d2 From a947614e0c449795906d145ecbb478cdc3124a95 Mon Sep 17 00:00:00 2001 From: ryderr Date: Wed, 8 Oct 2014 16:23:47 -0400 Subject: slightly better modal --- public/assets/stylesheets/app.css | 18 +++++++++++------- views/projects/layouts-modal.ejs | 14 ++++++++------ 2 files changed, 19 insertions(+), 13 deletions(-) (limited to 'views/projects/layouts-modal.ejs') diff --git a/public/assets/stylesheets/app.css b/public/assets/stylesheets/app.css index aeb05a1..1328006 100755 --- a/public/assets/stylesheets/app.css +++ b/public/assets/stylesheets/app.css @@ -664,10 +664,14 @@ iframe.embed { } .templates { overflow: auto; - max-height: 80%; + max-height: 100%; + width: 100%; + padding: 20px 0 40px 0; +} +.templates-list { + display: inline-block; width: 100%; } - .templates::-webkit-scrollbar { width: 5px; height: 5px; @@ -687,11 +691,11 @@ border-left: 1px solid black; } .templates span { - display: block; - float: left; - margin: 2vw; - padding: 2vw; - cursor:pointer; + display: block; + float: left; + margin: 1vw 0; + padding: 2vw; + cursor: pointer; } .templates span .image { background-position: center; diff --git a/views/projects/layouts-modal.ejs b/views/projects/layouts-modal.ejs index 8754617..dcc53e6 100644 --- a/views/projects/layouts-modal.ejs +++ b/views/projects/layouts-modal.ejs @@ -3,16 +3,17 @@
-

Edit Room Layouts

+

Edit Room Layouts

+
+ +
There are no room layouts available. Please create a new one.
-
- -
+
@@ -21,7 +22,7 @@
-

Your Projects

+

Your Projects

@@ -37,8 +38,9 @@ X
-

Choose Room Template

+

Select a Room Template

+
-- cgit v1.2.3-70-g09d2 From 0db06769ef542eb9d62b53383d0abeff852bc5db Mon Sep 17 00:00:00 2001 From: ryderr Date: Wed, 8 Oct 2014 16:44:48 -0400 Subject: make your own --- views/projects/layouts-modal.ejs | 3 +++ 1 file changed, 3 insertions(+) (limited to 'views/projects/layouts-modal.ejs') diff --git a/views/projects/layouts-modal.ejs b/views/projects/layouts-modal.ejs index dcc53e6..6f60d81 100644 --- a/views/projects/layouts-modal.ejs +++ b/views/projects/layouts-modal.ejs @@ -43,6 +43,9 @@
+
+ +
There are no room layouts available. Please create a new one. -- cgit v1.2.3-70-g09d2 From c781911322c84eb0c2aa4a00860016437d7b7cba Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Wed, 26 Aug 2015 18:30:33 -0400 Subject: surface blueprints on new project modal --- .../rectangles/engine/map/tools/arrow.js | 2 + .../rectangles/engine/map/tools/eraser.js | 2 + .../rectangles/engine/map/tools/line.js | 2 +- .../rectangles/engine/map/tools/ortho.js | 5 +- .../rectangles/engine/map/tools/polyline.js | 2 + .../rectangles/engine/map/tools/position.js | 2 + .../rectangles/engine/map/tools/start.js | 2 +- .../javascripts/ui/blueprint/BlueprintUploader.js | 9 +- public/assets/javascripts/ui/site/LayoutsModal.js | 190 +++++++++++++++++++-- public/assets/stylesheets/app.css | 4 +- server/lib/api/layouts.js | 18 +- views/projects/layouts-modal.ejs | 3 + 12 files changed, 211 insertions(+), 30 deletions(-) (limited to 'views/projects/layouts-modal.ejs') diff --git a/public/assets/javascripts/rectangles/engine/map/tools/arrow.js b/public/assets/javascripts/rectangles/engine/map/tools/arrow.js index 2a73954..00478d4 100644 --- a/public/assets/javascripts/rectangles/engine/map/tools/arrow.js +++ b/public/assets/javascripts/rectangles/engine/map/tools/arrow.js @@ -1,3 +1,5 @@ +// Tool used to move corners of polylines + var ArrowTool = MapTool.extend(function(base){ var exports = {} diff --git a/public/assets/javascripts/rectangles/engine/map/tools/eraser.js b/public/assets/javascripts/rectangles/engine/map/tools/eraser.js index 648cd11..8fc3687 100644 --- a/public/assets/javascripts/rectangles/engine/map/tools/eraser.js +++ b/public/assets/javascripts/rectangles/engine/map/tools/eraser.js @@ -1,3 +1,5 @@ +// Tool used to delete lines + var EraserTool = MapTool.extend(function(base){ var exports = {} exports.down = function(e, cursor){ diff --git a/public/assets/javascripts/rectangles/engine/map/tools/line.js b/public/assets/javascripts/rectangles/engine/map/tools/line.js index a8e2473..8175d66 100644 --- a/public/assets/javascripts/rectangles/engine/map/tools/line.js +++ b/public/assets/javascripts/rectangles/engine/map/tools/line.js @@ -1,4 +1,4 @@ -// This tool is used to define a very simple line between two points. +// Tool is used to define a very simple line between two points. // It is used by the BlueprintScaler to specify a sample distance to scale. var LineTool = MapTool.extend(function(base){ diff --git a/public/assets/javascripts/rectangles/engine/map/tools/ortho.js b/public/assets/javascripts/rectangles/engine/map/tools/ortho.js index 918ac0d..6ced728 100644 --- a/public/assets/javascripts/rectangles/engine/map/tools/ortho.js +++ b/public/assets/javascripts/rectangles/engine/map/tools/ortho.js @@ -1,6 +1,7 @@ +// Tool to make a polyline where all walls are orthogonal + var OrthoPolylineTool = MapTool.extend(function (base) { - // this will work like normal polyline except all walls will be orthogonal - + var prev_point, horizontal = false, first_edge_is_horizontal = false var exports = {} diff --git a/public/assets/javascripts/rectangles/engine/map/tools/polyline.js b/public/assets/javascripts/rectangles/engine/map/tools/polyline.js index 6716180..445ae26 100644 --- a/public/assets/javascripts/rectangles/engine/map/tools/polyline.js +++ b/public/assets/javascripts/rectangles/engine/map/tools/polyline.js @@ -1,3 +1,5 @@ +// Tool used to draw polylines with arbitrary angles + var PolylineTool = MapTool.extend(function (base) { var exports = {} exports.down = function(e, cursor){ diff --git a/public/assets/javascripts/rectangles/engine/map/tools/position.js b/public/assets/javascripts/rectangles/engine/map/tools/position.js index a994f5a..f8365bc 100644 --- a/public/assets/javascripts/rectangles/engine/map/tools/position.js +++ b/public/assets/javascripts/rectangles/engine/map/tools/position.js @@ -1,3 +1,5 @@ +// Tool used to set position on the map and let you change the view by dragging. + var PositionTool = MapTool.extend(function(base){ var exports = { recenterCursor: false, diff --git a/public/assets/javascripts/rectangles/engine/map/tools/start.js b/public/assets/javascripts/rectangles/engine/map/tools/start.js index cca387c..203a85f 100644 --- a/public/assets/javascripts/rectangles/engine/map/tools/start.js +++ b/public/assets/javascripts/rectangles/engine/map/tools/start.js @@ -1,4 +1,4 @@ -// This tool is used to set the start position on the map. +// Tool is used to set the start position on the map. var StartPositionTool = MapTool.extend(function(base){ var exports = {} diff --git a/public/assets/javascripts/ui/blueprint/BlueprintUploader.js b/public/assets/javascripts/ui/blueprint/BlueprintUploader.js index fbb71d5..fe1073a 100644 --- a/public/assets/javascripts/ui/blueprint/BlueprintUploader.js +++ b/public/assets/javascripts/ui/blueprint/BlueprintUploader.js @@ -37,8 +37,12 @@ var BlueprintUploader = UploadView.extend({ if (data && data.length) { this.$blueprints.show() data.forEach(this.append.bind(this)) - this.hide() - if (this.nameToShow && this.nameToShow !== "new") { + if (this.nameToShow === "new") { + // don't pick anything.. + this.show() + } + else if (! this.nameToShow) { + this.hide() data.some(function(el){ if (el.slug == this.nameToShow) { this.parent.scaler.pick(el) @@ -47,6 +51,7 @@ var BlueprintUploader = UploadView.extend({ }.bind(this)) } else { + this.hide() this.parent.scaler.pick(data[0]) } } diff --git a/public/assets/javascripts/ui/site/LayoutsModal.js b/public/assets/javascripts/ui/site/LayoutsModal.js index 87251af..a9c6ef0 100644 --- a/public/assets/javascripts/ui/site/LayoutsModal.js +++ b/public/assets/javascripts/ui/site/LayoutsModal.js @@ -6,6 +6,10 @@ var LayoutsIndex = View.extend({ this.$templatesList = this.$(".templates-list") this.$noTemplates = this.$(".no-templates") this.$form = this.$("form") + + this.$userTemplatesList = this.$(".userTemplatesList") + this.$blueprintsList = this.$(".blueprintsList") + this.$newBlueprintButton = this.$("[data-role='create-new-blueprint']") }, load: function(type){ @@ -15,11 +19,6 @@ var LayoutsIndex = View.extend({ }, populate: function(data){ -/* - if (data.user.plan_level < 1 && data.projectCount == 1) { - // show lockout message - } -*/ if (! data.layouts.length) { this.$templates.hide() this.$form.hide() @@ -89,20 +88,89 @@ var LayoutsModal = ModalView.extend(LayoutsIndex.prototype).extend({ action: "/api/layout", events: { - "click .templates span": 'toggleActive', + "click .templates span": 'pick', + "click .userTemplates span": 'pick', + "click .blueprints span": 'pickBlueprint', "submit form": 'newLayout', }, - toggleActive: function(e){ + pick: function(e){ e.preventDefault() - this.$(".templates .active").removeClass("active") var $layout = $(e.currentTarget) - $layout.addClass("active") + window.location.pathname = "/layout/" + $layout.data("slug") + }, + + pick: function(e){ + e.preventDefault() + var $blueprint = $(e.currentTarget) + $blueprint.addClass("active") - // actually do window.location.pathname = "/layout/" + $layout.data("slug") }, - + + populate: function(data){ +/* + if (data.user.plan_level < 1 && data.projectCount == 1) { + // show lockout message + } +*/ + if (! data.layouts.length) { + this.$templates.hide() + this.$form.hide() + this.$noTemplates.show() + } + this.$templatesList.empty() + data.layouts.forEach(function(room){ + var $span = $("") + $span.data("slug", room.slug) + + var $label = $("
-- cgit v1.2.3-70-g09d2 From c29a5363e3e4e0833e78958fe95b52811d0b0660 Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Wed, 26 Aug 2015 18:42:13 -0400 Subject: surface blueprints on layouts modal --- public/assets/javascripts/ui/site/LayoutsIndex.js | 85 ++++++++ public/assets/javascripts/ui/site/LayoutsModal.js | 221 ++------------------- .../assets/javascripts/ui/site/NewProjectModal.js | 118 +++++++++++ public/assets/stylesheets/app.css | 6 +- views/home.ejs | 2 +- views/partials/scripts.ejs | 2 + views/projects/layouts-modal.ejs | 4 +- 7 files changed, 226 insertions(+), 212 deletions(-) create mode 100644 public/assets/javascripts/ui/site/LayoutsIndex.js create mode 100644 public/assets/javascripts/ui/site/NewProjectModal.js (limited to 'views/projects/layouts-modal.ejs') diff --git a/public/assets/javascripts/ui/site/LayoutsIndex.js b/public/assets/javascripts/ui/site/LayoutsIndex.js new file mode 100644 index 0000000..f7272bb --- /dev/null +++ b/public/assets/javascripts/ui/site/LayoutsIndex.js @@ -0,0 +1,85 @@ + +var LayoutsIndex = View.extend({ + + initialize: function(){ + this.$templates = this.$(".templates") + this.$templatesList = this.$(".templates-list") + this.$noTemplates = this.$(".no-templates") + this.$form = this.$("form") + + this.$userTemplatesList = this.$(".userTemplatesList") + this.$blueprintsList = this.$(".blueprintsList") + this.$newBlueprintButton = this.$("[data-role='create-new-blueprint']") + }, + + load: function(type){ + this.$templates.children("span").remove() + + $.get(this.action, this.populate.bind(this)) + }, + + populate: function(data){ + if (! data.layouts.length) { + this.$templates.hide() + this.$form.hide() + this.$noTemplates.show() + } + this.$templatesList.empty() + data.layouts.forEach(function(room){ + var $span = $("") + $span.data("slug", room.slug) + + var $label = $("