Author: erinnp
Date: Fri Aug 16 17:02:09 2013
New Revision: 1514787
URL: http://svn.apache.org/r1514787
Log:
Added get support to pagesForRender, register regionWidgets to rave
Modified:
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/common/resources/PagesForRenderResource.js
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/portal/main.js
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/portal/routes.js
Modified:
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/common/resources/PagesForRenderResource.js
URL:
http://svn.apache.org/viewvc/rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/common/resources/PagesForRenderResource.js?rev=1514787&r1=1514786&r2=1514787&view=diff
==============================================================================
---
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/common/resources/PagesForRenderResource.js
(original)
+++
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/common/resources/PagesForRenderResource.js
Fri Aug 16 17:02:09 2013
@@ -17,12 +17,13 @@
* under the License.
*/
-define(['underscore'], function (_) {
+define(['underscore', 'rave'], function (_, rave) {
return ['$resource', 'Pages', 'Regions', 'RegionWidgets', 'constants',
function ($resource, Pages, Regions, RegionWidgets, constants) {
- var res =
$resource(constants.hostedPath+'/api/rest/pages/render/:context/:identifier/:id',
{},
+ var res = $resource(constants.hostedPath +
'/api/rest/pages/render/:context/:identifier/:id', {},
{
- _query: { method: 'GET', isArray: true }
+ _query: { method: 'GET', isArray: true },
+ _get: {method: 'GET'}
});
res.query = function (args, onSuccess, onError) {
@@ -33,21 +34,36 @@ define(['underscore'], function (_) {
_.each(pages, function (page, k) {
page = pages[k] = new Pages(page);
- console.log(page);
-
- _.each(page.regions, function (region, j) {
- region = page.regions[j] = new Regions(region);
-
- _.each(region.regionWidgets, function
(regionWidget, i) {
- region.regionWidgets[i] = new
RegionWidgets(regionWidget);
- });
- });
+ decomposePage(page);
});
return onSuccess(pages);
});
}
+ res.get = function (args, onSuccess, onError) {
+ return res.get.call(null, args).$then(function (res) {
+ //TODO: check for error
+ var page = res.data;
+
+ decomposePage(page);
+
+ return onSuccess(page);
+ });
+ }
+
+ function decomposePage(page) {
+ _.each(page.regions, function (region, j) {
+ region = page.regions[j] = new Regions(region);
+
+ _.each(region.regionWidgets, function (regionWidget, i) {
+ regionWidget =
rave.registerWidget(regionWidget.regionId, regionWidget);
+ region.regionWidgets[i] = new
RegionWidgets(regionWidget);
+ });
+ });
+ }
+
+
return res;
}
];
Modified:
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/portal/main.js
URL:
http://svn.apache.org/viewvc/rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/portal/main.js?rev=1514787&r1=1514786&r2=1514787&view=diff
==============================================================================
---
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/portal/main.js
(original)
+++
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/portal/main.js
Fri Aug 16 17:02:09 2013
@@ -30,7 +30,9 @@ requirejs.config({
"jqueryTouchPouch":
'//cdnjs.cloudflare.com/ajax/libs/jqueryui-touch-punch/0.2.2/jquery.ui.touch-punch.min',
"angular":
'//cdnjs.cloudflare.com/ajax/libs/angular.js/1.1.5/angular.min',
"angularResource":
'//cdnjs.cloudflare.com/ajax/libs/angular.js/1.1.5/angular-resource.min',
- "osapi":"//placeholder.url.will.be.replaced.by.opensocial.environment",
+ //TODO: We need to get this url from the server either via an endpoint
or jsp
+
"osapi":"/gadgets/js/container:pubsub-2:open-views.js?c=1&container=default&debug=1",
+//
"osapi":"//placeholder.url.will.be.replaced.by.opensocial.environment",
"rave": "core/main",
"underscore":
"//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.4.4/underscore-min"
},
Modified:
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/portal/routes.js
URL:
http://svn.apache.org/viewvc/rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/portal/routes.js?rev=1514787&r1=1514786&r2=1514787&view=diff
==============================================================================
---
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/portal/routes.js
(original)
+++
rave/branches/angular/rave-portal-resources/src/main/webapp/static/script/portal/routes.js
Fri Aug 16 17:02:09 2013
@@ -24,22 +24,41 @@ define(['angular', 'common/resources/ind
function ($routeProvider, $locationProvider, $httpProvider) {
var resolve = {
- pages: ['PagesForRender', '$q', '$rootScope', function
(PagesForRender, $q, $rootScope) {
- var deferred = $q.defer();
+ pages: ['PagesForRender', '$q', '$rootScope',
+ function (PagesForRender, $q, $rootScope) {
+ var deferred = $q.defer();
+
+ if ($rootScope.pages) {
+ deferred.resolve($rootScope.pages);
+ } else {
+ PagesForRender.query({
+ context: 'portal',
+ identifier: '@self'
+ }, function (data) {
+ deferred.resolve(data);
+ });
+ }
- if($rootScope.pages) {
- deferred.resolve($rootScope.pages);
- } else {
- PagesForRender.query({
- context: 'portal',
- identifier: '@self'
- }, function(data){
- deferred.resolve(data);
- });
+ return deferred.promise;
}
+ ],
+ user: [ 'Users', '$q', '$rootScope',
+ function (Users, $q, $rootScope) {
+ var deferred = $q.defer();
+
+ if ($rootScope.user) {
+ deferred.resolve($rootScope.user);
+ } else {
+ Users.get({
+ id: '@self'
+ }, function (data) {
+ deferred.resolve(data);
+ });
+ }
- return deferred.promise;
- }]
+ return deferred.promise;
+ }
+ ]
}
$routeProvider
@@ -55,9 +74,10 @@ define(['angular', 'common/resources/ind
}
]);
- router.run(['$route', '$rootScope', function($route, $rootScope) {
- $rootScope.$on('$routeChangeSuccess', function(evt, curr, prev){
+ router.run(['$route', '$rootScope', function ($route, $rootScope) {
+ $rootScope.$on('$routeChangeSuccess', function (evt, curr, prev) {
$rootScope.pages = curr.locals.pages;
+ $rootScope.user = curr.locals.user;
$rootScope.currentPageId = curr.params.tabId ||
$rootScope.pages[0].id;
});
}]);