From 222562c734396403c18c90a1ca395a36c4d49da4 Mon Sep 17 00:00:00 2001
From: François Frisch
Date: Mon, 19 Mar 2012 09:21:15 -0700
Subject: Youtube appending script in draw
---
.../ui/youtube-channel.reel/youtube-channel.js | 19 ++++++++++++++++---
1 file changed, 16 insertions(+), 3 deletions(-)
(limited to 'node_modules/montage/ui')
diff --git a/node_modules/montage/ui/youtube-channel.reel/youtube-channel.js b/node_modules/montage/ui/youtube-channel.reel/youtube-channel.js
index fd642290..3e20c406 100644
--- a/node_modules/montage/ui/youtube-channel.reel/youtube-channel.js
+++ b/node_modules/montage/ui/youtube-channel.reel/youtube-channel.js
@@ -77,9 +77,22 @@ var YoutubeChannel = exports.YoutubeChannel = Montage.create(Component, {
// create url
var url = "http://gdata.youtube.com/feeds/api/users/" + this._channel + "/uploads?v=2&alt=json-in-script&callback=" + callbackName;
- var script = document.createElement("script");
- script.src = url;
- this._element.appendChild(script);
+ this.script = document.createElement("script");
+ this.script.src = url;
+ this.needsDraw = true;
+ }
+ },
+
+ script: {
+ value: null
+ },
+
+ draw: {
+ value: function() {
+ if (this.script) {
+ this._element.appendChild(this.script);
+ this.script = null;
+ }
}
},
--
cgit v1.2.3
From eb5cda3ce03b35c3335b91c34ead0cdf290b243e Mon Sep 17 00:00:00 2001
From: Stuart Knightley
Date: Mon, 19 Mar 2012 09:46:38 -0700
Subject: Update Youtube player to HTML5
---
.../ui/youtube-player.reel/youtube-player.html | 10 ++----
.../ui/youtube-player.reel/youtube-player.js | 38 ++++++++++++----------
2 files changed, 24 insertions(+), 24 deletions(-)
(limited to 'node_modules/montage/ui')
diff --git a/node_modules/montage/ui/youtube-player.reel/youtube-player.html b/node_modules/montage/ui/youtube-player.reel/youtube-player.html
index ae757626..ec61493c 100644
--- a/node_modules/montage/ui/youtube-player.reel/youtube-player.html
+++ b/node_modules/montage/ui/youtube-player.reel/youtube-player.html
@@ -7,23 +7,19 @@
-
- Show:
-
-
-
MAP
-
+
diff --git a/node_modules/montage/ui/map.reel/map.js b/node_modules/montage/ui/map.reel/map.js
index c03d51c5..305ae181 100644
--- a/node_modules/montage/ui/map.reel/map.js
+++ b/node_modules/montage/ui/map.reel/map.js
@@ -42,34 +42,7 @@ var Map = exports.Map = Montage.create(Component, /** @lends module:"montage/ui/
enumerable: false,
value: false
},
- _latitude: {
- enumerable: false,
- value: -34.397
- },
- latitude: {
- enumerable: false,
- set: function(value) {
- this._latitude = value;
- this.needsDraw = true;
- },
- get: function() {
- return this._latitude;
- }
- },
- _longitude: {
- enumerable: false,
- value: -34.397
- },
- longitude: {
- enumerable: false,
- set: function(value) {
- this._longitude = value;
- this.needsDraw = true;
- },
- get: function() {
- return this._longitude;
- }
- },
+
defaultLatLng: {
value: {lat: -34.397, lng: 150.644}
@@ -132,6 +105,7 @@ var Map = exports.Map = Montage.create(Component, /** @lends module:"montage/ui/
return this._category;
},
set: function(value) {
+ console.log('category set: ' + value);
if(value) {
this._category = value;
this._getPlaces(this._category);
@@ -170,6 +144,7 @@ var Map = exports.Map = Montage.create(Component, /** @lends module:"montage/ui/
}
var service = new google.maps.places.PlacesService(this._map);
service.search(request, function(results, status) {
+ console.log('got places for ', self.category, status, results);
if (status == google.maps.places.PlacesServiceStatus.OK) {
self._places = results;
} else {
@@ -192,12 +167,18 @@ var Map = exports.Map = Montage.create(Component, /** @lends module:"montage/ui/
case 'hospital':
icon = '10-medical.png';
break;
- case 'cafe':
- icon = '34-coffee.png';
+ case 'bar':
+ icon = '88-beer-mug.png';
+ break;
+ case 'grocery_or_supermarket':
+ icon = '80-shopping-cart.png';
break;
case 'museum':
icon = '41-picture-frame.png';
break;
+ case 'gas_station':
+ icon = '47-fuel.png';
+ break;
};
if(icon) {
image = new google.maps.MarkerImage('images/' + icon);
--
cgit v1.2.3
From ec58642a7b31165890eb5bef7d95ce59dd0c34a0 Mon Sep 17 00:00:00 2001
From: Kishore Subramanian
Date: Mon, 19 Mar 2012 14:14:29 -0700
Subject: Changes to Map and FeedReader
- Added traffic property to Map
- Support for show/hide traffic in the example
- Changed FeedReader to use only one DIV. No longer uses Repetition
- Support multiple modes in the Feed reader - timed/animated---
.../ui/feed-reader/feed-entry.reel/feed-entry.js | 10 +-
.../feed-reader/feed-reader.reel/feed-reader.html | 38 +-----
.../ui/feed-reader/feed-reader.reel/feed-reader.js | 127 ++++++++++++---------
node_modules/montage/ui/map.reel/map.js | 29 ++++-
4 files changed, 118 insertions(+), 86 deletions(-)
(limited to 'node_modules/montage/ui')
diff --git a/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.js b/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.js
index 3d97eec7..72c5023e 100644
--- a/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.js
+++ b/node_modules/montage/ui/feed-reader/feed-entry.reel/feed-entry.js
@@ -8,6 +8,14 @@ var Montage = require("montage").Montage,
exports.FeedEntry = Montage.create(Component, {
- entry: {value: null}
+ _entry: {value: null},
+ entry: {
+ get: function() {
+ return this._entry;
+ },
+ set: function(value) {
+ this._entry = value;
+ }
+ }
});
diff --git a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
index 646fd01e..e5251e0a 100644
--- a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
+++ b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.html
@@ -23,17 +23,7 @@
}
}
},
-
- "repetition": {
- "module": "montage/ui/repetition.reel",
- "name": "Repetition",
- "properties": {
- "element": {"#": "entries"},
- "contentController": {"@": "entriesController"},
- "isSelectionEnabled": true,
- "orientation": "vertical"
- }
- },
+
"feedEntry": {
"module": "montage/ui/feed-reader/feed-entry.reel",
"name": "FeedEntry",
@@ -42,27 +32,19 @@
},
"bindings": {
"entry": {
- "boundObject": {"@": "repetition"},
- "boundObjectPropertyPath": "objectAtCurrentIteration",
+ "boundObject": {"@": "owner"},
+ "boundObjectPropertyPath": "activeFeedEntry",
"oneway": true
}
- }
+ }
},
"owner": {
"module": "montage/ui/feed-reader/feed-reader.reel",
"name": "FeedReader",
"properties": {
- "element": {"#": "feed-reader"},
- "repetition": {"@": "repetition"}
- },
- "bindings": {
- "items": {
- "boundObject": {"@": "repetition"},
- "boundObjectPropertyPath": "objects",
- "oneway": true
- }
- }
+ "element": {"#": "feed-reader"}
+ }
}
}
@@ -74,16 +56,8 @@
}
.feed-entry {
- display: none;
- }
-
- .montage-hidden {
- display: none;
}
- .active {
- display: block;
- }
diff --git a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js
index d5c9ca17..8fd9ae22 100644
--- a/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js
+++ b/node_modules/montage/ui/feed-reader/feed-reader.reel/feed-reader.js
@@ -42,92 +42,117 @@ exports.FeedReader = Montage.create(Component, {
},
// time in ms between slides
- interval: {value: 3000, distinct: true},
-
- repetition: {enumerable: false, value: null},
+ interval: {value: 3, distinct: true},
maxEntries: {value: 10, distinct: true},
- entries: {value: null},
-
-
- _startLoading: {
- value: function() {
- //Notifier.show('Loading ... please wait', null, {top: this.element.style.top, left: this.element.style.left + 20});
- }
- },
-
- _stopLoading: {
- value: function() {
- //Notifier.hide();
- }
- },
+ entries: {value: null},
- feedEntryTimer: {enumerable: false, value: null},
- _items: {
- value: null
- },
- items: {
+ _feedDisplayMode: {value: null},
+ feedDisplayMode: {
get: function() {
- return this._items;
+ return this._feedDisplayMode;
},
set: function(value) {
- this._items = value;
- // reset the counter
- console.log('got items');
- this.activeIndex = 0;
-
- if(this.feedEntryTimer) {
- window.clearInterval(this.feedEntryTimer);
- }
- var self = this, maxEntries = self.maxEntries;
-
- this.feedEntryTimer = setInterval(function() {
- var index = self.activeIndex + 1;
- if(index > maxEntries) {
- index = 0;
- }
- if(index < 0) {
- index = 0;
- }
- self.activeIndex = index;
-
- }, this.interval);
+ this._feedDisplayMode = value;
}
},
+
+ feedEntryTimer: {enumerable: false, value: null},
+
+
+ activeFeedEntry: {value: null},
_activeIndex: {value: null},
activeIndex: {
get: function() {
return this._activeIndex || 0;
},
- set: function(value) {
- this._activeIndex = value;
- this.repetition.activeIndexes = [value];
+ set: function(index) {
+ if(this.entries) {
+ var max = this.entries.length-1;
+ if(index > max) {
+ index = 0;
+ }
+ if(index < 0) {
+ index = 0;
+ }
+ this._activeIndex = index;
+ this.activeFeedEntry = this.entries[this._activeIndex];
+ } else {
+ this._activeIndex = 0;
+ }
}
},
_fetchFeed: {
value: function() {
+
var url = this.feedURL;
var feed = new google.feeds.Feed(url);
feed.setNumEntries(10);
var self = this;
-
- this._startLoading();
self.entries = [];
feed.load(function(result) {
- self._stopLoading();
+ //self.removeEntryAnimation();
if(result.error) {
self.entries = [];
} else {
- //console.log('entries: ', result.feed.entries);
+ //console.log('entries: ', result.feed.entries);
self.entries = result.feed.entries;
+ this._activeIndex = 0;
}
+
+
});
}
+ },
+
+ addEntryAnimation: {
+ value: function() {
+ var self = this;
+ if("animation" == this.feedDisplayMode) {
+ this.element.addEventListener('animationend', this);
+ } else {
+ // timer
+ this.feedEntryTimer = setInterval(function() {
+ self.activeIndex = self.activeIndex + 1;
+ }, (this.interval * 1000));
+ }
+ }
+ },
+
+ removeEntryAnimation: {
+ value: function() {
+ if("animation" == this.feedDisplayMode) {
+ this.element.removeEventListener('animationend', this);
+ } else {
+ if(this.feedEntryTimer) {
+ window.clearInterval(this.feedEntryTimer);
+ }
+ }
+ }
+ },
+
+ handleAnimationend: {
+ value: function() {
+ console.log('animation end');
+ this.activeIndex = this.activeIndex + 1;
+ }
+ },
+
+ prepareForDraw: {
+ value: function() {
+ this.addEntryAnimation();
+ }
+ },
+
+ draw: {
+ value: function() {
+
+ }
}
});
diff --git a/node_modules/montage/ui/map.reel/map.js b/node_modules/montage/ui/map.reel/map.js
index 305ae181..42af218e 100644
--- a/node_modules/montage/ui/map.reel/map.js
+++ b/node_modules/montage/ui/map.reel/map.js
@@ -114,6 +114,21 @@ var Map = exports.Map = Montage.create(Component, /** @lends module:"montage/ui/
}
},
+ trafficLayer: {value: null},
+ _traffic: {value: null},
+ traffic: {
+ get: function() {
+ return this._traffic;
+ },
+ set: function(value) {
+ if(value !== this._traffic) {
+ this._traffic = value;
+ this.needsDraw = true;
+ }
+ }
+ },
+
+
zoomValue: {
value: 8
},
@@ -239,7 +254,7 @@ var Map = exports.Map = Montage.create(Component, /** @lends module:"montage/ui/
this._map = new window.google.maps.Map(this.mapEl, myOptions);
} else {
var map = this._map;
- map.setZoom(12);
+ map.setZoom(10);
var latLng = new window.google.maps.LatLng(latLng.lat, latLng.lng);
map.setCenter(latLng);
var marker = new google.maps.Marker({
@@ -249,11 +264,21 @@ var Map = exports.Map = Montage.create(Component, /** @lends module:"montage/ui/
var places = this._places;
if(places && places.length > 0) {
+ map.setZoom(13);
this._removeAllMarkers();
for (var i = 0; i < places.length; i++) {
this._createMarker(places[i]);
}
- }
+ }
+
+ if(this.traffic === true) {
+ this.trafficLayer = new google.maps.TrafficLayer();
+ this.trafficLayer.setMap(map);
+ } else {
+ if(this.trafficLayer) {
+ this.trafficLayer.setMap(null);
+ }
+ }
}
}
--
cgit v1.2.3
From ea439c4471948cb7e1dbb98bfa9c2ddc374d48e7 Mon Sep 17 00:00:00 2001
From: Nivesh Rajbhandari
Date: Mon, 19 Mar 2012 14:19:48 -0700
Subject: Maps - Apply default width and height styles to components if
specified. Change default location to Sunnyvale.
Signed-off-by: Nivesh Rajbhandari
---
node_modules/montage/ui/map.reel/map.html | 4 ++--
node_modules/montage/ui/map.reel/map.js | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
(limited to 'node_modules/montage/ui')
diff --git a/node_modules/montage/ui/map.reel/map.html b/node_modules/montage/ui/map.reel/map.html
index b255ac1e..b39a11a9 100644
--- a/node_modules/montage/ui/map.reel/map.html
+++ b/node_modules/montage/ui/map.reel/map.html
@@ -29,8 +29,8 @@
.montage-google-map {
margin: 0;
padding: 0;
- width: 600px;
- height: 700px;
+ width: 280px;
+ height: 280px;
}
diff --git a/node_modules/montage/ui/map.reel/map.js b/node_modules/montage/ui/map.reel/map.js
index 42af218e..cba08a42 100644
--- a/node_modules/montage/ui/map.reel/map.js
+++ b/node_modules/montage/ui/map.reel/map.js
@@ -43,9 +43,9 @@ var Map = exports.Map = Montage.create(Component, /** @lends module:"montage/ui/
value: false
},
-
+ // Sunnyvale, CA
defaultLatLng: {
- value: {lat: -34.397, lng: 150.644}
+ value: {lat: 37.37, lng: -122.03}
},
_latLng: {
--
cgit v1.2.3
From dd382088b4990c4e39f77d793c1a6bd7e3c52aca Mon Sep 17 00:00:00 2001
From: Nivesh Rajbhandari
Date: Mon, 19 Mar 2012 14:30:22 -0700
Subject: Map - width and height should be 100% so resize handles work.
Signed-off-by: Nivesh Rajbhandari
---
node_modules/montage/ui/map.reel/map.html | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
(limited to 'node_modules/montage/ui')
diff --git a/node_modules/montage/ui/map.reel/map.html b/node_modules/montage/ui/map.reel/map.html
index b39a11a9..abb51ddd 100644
--- a/node_modules/montage/ui/map.reel/map.html
+++ b/node_modules/montage/ui/map.reel/map.html
@@ -29,8 +29,8 @@
.montage-google-map {
margin: 0;
padding: 0;
- width: 280px;
- height: 280px;
+ width: 100%;
+ height: 100%;
}
--
cgit v1.2.3
From e438756a18e4ae46cd4713e81f0bc4a1d2ddea15 Mon Sep 17 00:00:00 2001
From: Stuart Knightley
Date: Mon, 19 Mar 2012 15:13:28 -0700
Subject: Update Youtube channel to have three thumbnails
---
.../ui/youtube-channel.reel/youtube-channel.html | 72 +++++++++++-
.../ui/youtube-channel.reel/youtube-channel.js | 128 ++++++++++++++++++---
.../ui/youtube-player.reel/youtube-player.js | 37 +++++-
3 files changed, 216 insertions(+), 21 deletions(-)
(limited to 'node_modules/montage/ui')
diff --git a/node_modules/montage/ui/youtube-channel.reel/youtube-channel.html b/node_modules/montage/ui/youtube-channel.reel/youtube-channel.html
index 184ac360..50286c22 100644
--- a/node_modules/montage/ui/youtube-channel.reel/youtube-channel.html
+++ b/node_modules/montage/ui/youtube-channel.reel/youtube-channel.html
@@ -15,20 +15,86 @@
"element": {"#": "player"}
}
},
+ "imageA": {
+ "prototype": "montage/ui/image.reel",
+ "properties": {
+ "element": {"#": "imageA"}
+ }
+ },
+ "imageB": {
+ "prototype": "montage/ui/image.reel",
+ "properties": {
+ "element": {"#": "imageB"}
+ }
+ },
+ "imageC": {
+ "prototype": "montage/ui/image.reel",
+ "properties": {
+ "element": {"#": "imageC"}
+ }
+ },
"owner": {
- "prototype": "montage/ui/youtube-channel.reel",
+ "module": "montage/ui/youtube-channel.reel",
+ "name": "YoutubeChannel",
"properties": {
"element": {"#": "container"},
- "player": {"@": "player"}
+ "player": {"@": "player"},
+ "_popupElement": {"#": "popup"},
+ "imageA": {"@": "imageA"},
+ "imageB": {"@": "imageB"},
+ "imageC": {"@": "imageC"}
}
}
}
+