From e7a445423dd6dec34f398be4017389422e4976de Mon Sep 17 00:00:00 2001 From: Connor Turland Date: Wed, 6 Aug 2014 10:09:01 -0400 Subject: [PATCH] work in progress on explore maps pages --- .../javascripts/metamaps/Metamaps.GlobalUI.js | 8 +++-- .../javascripts/metamaps/Metamaps.Router.js | 25 +++++++++---- .../javascripts/metamaps/Metamaps.Views.js | 26 ++++++++++++++ app/assets/javascripts/metamaps/metamaps.js | 6 ++-- app/controllers/maps_controller.rb | 8 ++--- app/views/layouts/_templates.html.erb | 35 ++++++++++++++++++- app/views/layouts/application.html.erb | 2 +- app/views/main/home.html.erb | 2 +- app/views/maps/index.html.erb | 8 ++--- config/routes.rb | 6 ++-- 10 files changed, 100 insertions(+), 26 deletions(-) create mode 100644 app/assets/javascripts/metamaps/Metamaps.Views.js diff --git a/app/assets/javascripts/metamaps/Metamaps.GlobalUI.js b/app/assets/javascripts/metamaps/Metamaps.GlobalUI.js index 3e517193..33a1d5e0 100644 --- a/app/assets/javascripts/metamaps/Metamaps.GlobalUI.js +++ b/app/assets/javascripts/metamaps/Metamaps.GlobalUI.js @@ -82,9 +82,13 @@ Metamaps.GlobalUI = { $('.alert.metamaps').delay(10000).fadeOut('fast'); // initialize global backbone models and collections - Metamaps.Active.Mapper = new Metamaps.Backbone.Mapper(Metamaps.Active.Mapper); + if (Metamaps.Active.Mapper) Metamaps.Active.Mapper = new Metamaps.Backbone.Mapper(Metamaps.Active.Mapper); Metamaps.Mappers = new Metamaps.Backbone.MapperCollection([Metamaps.Active.Mapper]); - Metamaps.Maps = new Metamaps.Backbone.MapsCollection(); + Metamaps.Maps = {}; + Metamps.Maps.Mine = new Metamaps.Backbone.MapsCollection(); + Metamps.Maps.Featured = new Metamaps.Backbone.MapsCollection(); + Metamps.Maps.Active = new Metamaps.Backbone.MapsCollection(); + Metamps.Maps.New = new Metamaps.Backbone.MapsCollection(); }, openLightbox: function (which) { var self = Metamaps.GlobalUI; diff --git a/app/assets/javascripts/metamaps/Metamaps.Router.js b/app/assets/javascripts/metamaps/Metamaps.Router.js index 7ecb49b3..f1dfe1ec 100644 --- a/app/assets/javascripts/metamaps/Metamaps.Router.js +++ b/app/assets/javascripts/metamaps/Metamaps.Router.js @@ -5,18 +5,29 @@ "explore/:section": "explore", // #explore/active "maps/:id": "maps" // #maps/7 }, + home: function () { + + document.title = 'My Maps | Metamaps'; + $('#cards').show(); + }, explore: function (section) { - console.log(section); + + var capitalize = section.charAt(0).toUpperCase() + section.slice(1); + + document.title = 'Explore ' + capitalize + ' Maps | Metamaps'; + //$('#cards').hide(); }, maps: function (id) { - console.log(id); + + document.title = 'Map ' + id + ' | Metamaps'; + $('#cards').hide(); } }); Metamaps.Router = new Router(); Metamaps.Router.init = function () { - /*Backbone.history.start({ + Backbone.history.start({ pushState: true, - root: '' + root: '/' }); console.log('router started'); $(document).on("click", "a:not([data-bypass])", function (evt) { @@ -25,11 +36,13 @@ attr: $(this).attr("href") }; var root = location.protocol + "//" + location.host + Backbone.history.options.root; - + + if (href.prop && href.prop === root) href.attr = "" + if (href.prop && href.prop.slice(0, root.length) === root) { evt.preventDefault(); Backbone.history.navigate(href.attr, true); } - });*/ + }); } })(); \ No newline at end of file diff --git a/app/assets/javascripts/metamaps/Metamaps.Views.js b/app/assets/javascripts/metamaps/Metamaps.Views.js new file mode 100644 index 00000000..396f6beb --- /dev/null +++ b/app/assets/javascripts/metamaps/Metamaps.Views.js @@ -0,0 +1,26 @@ +(function () { + Metamaps.Views = {}; + + Metamaps.Views.MapCard = Backbone.View.extend({ + + tagName: "div", + + className: "map", + + events: { + "click .icon": "open", + "click .button.edit": "openEditDialog", + "click .button.delete": "destroy" + }, + + initialize: function () { + this.listenTo(this.model, "change", this.render); + }, + + render: function () { + + } + + }); + +})(); \ No newline at end of file diff --git a/app/assets/javascripts/metamaps/metamaps.js b/app/assets/javascripts/metamaps/metamaps.js index ea0addf8..08b594d5 100644 --- a/app/assets/javascripts/metamaps/metamaps.js +++ b/app/assets/javascripts/metamaps/metamaps.js @@ -1632,9 +1632,8 @@ Metamaps.Control = { }, deleteNode: function (nodeid) { // refers to deleting topics permanently var node = Metamaps.Visualize.mGraph.graph.getNode(nodeid); - var id = node.getData('id'); Metamaps.Control.deselectNode(node); - Metamaps.Topics.get(id).destroy(); + Metamaps.Topics.get(nodeid).destroy(); Metamaps.Control.hideNode(nodeid); }, removeSelectedNodes: function () { // refers to removing topics permanently from a map @@ -1653,11 +1652,10 @@ Metamaps.Control = { removeNode: function (nodeid) { // refers to removing topics permanently from a map var mapperm = Metamaps.Active.Map.authorizeToEdit(Metamaps.Active.Mapper); var node = Metamaps.Visualize.mGraph.graph.getNode(nodeid); - var mappingid = node.getData("mapping").id; if (mapperm) { Metamaps.Control.deselectNode(node); - Metamaps.Mappings.get(mappingid).destroy(); + node.getData('mapping').destroy(); Metamaps.Control.hideNode(nodeid); } }, diff --git a/app/controllers/maps_controller.rb b/app/controllers/maps_controller.rb index a3a1da03..35dea28e 100644 --- a/app/controllers/maps_controller.rb +++ b/app/controllers/maps_controller.rb @@ -12,22 +12,22 @@ class MapsController < ApplicationController # GET /maps/mappers/:id def index - if request.path == "/maps" + if request.path == "/explore" redirect_to activemaps_url and return end @current = current_user @user = nil - if request.path =="/maps/active" + if request.path =="/explore/active" @maps = Map.order("updated_at DESC").limit(20) @request = "active" - elsif request.path =="/maps/featured" + elsif request.path =="/explore/featured" @maps = Map.order("name ASC").find_all_by_featured(true) @request = "featured" - elsif request.path == "/maps/new" + elsif request.path == "/explore/new" @maps = Map.order("created_at DESC").limit(20) @request = "new" diff --git a/app/views/layouts/_templates.html.erb b/app/views/layouts/_templates.html.erb index fc6b241f..85392e8c 100644 --- a/app/views/layouts/_templates.html.erb +++ b/app/views/layouts/_templates.html.erb @@ -4,7 +4,40 @@ #%>
- + + + +