moksha/api
by Máirín Duffy
moksha/api/widgets/containers/templates/layout_applist.mak | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
New commits:
commit 9e0da1aa032849a8577f813b7c3cc24ef1066947
Author: Máirín Duffy <duffy(a)redhat.com>
Date: Thu Apr 2 14:33:26 2009 -0400
- making some adjustments to containers so that apps containing div always has an 'app' css class. this is to help control padding between apps listed in the same page.
- also taking out the 'sort' class since it isn't being used.
- changing the span to a div
diff --git a/moksha/api/widgets/containers/templates/layout_applist.mak b/moksha/api/widgets/containers/templates/layout_applist.mak
index 4623c85..4e12fa0 100644
--- a/moksha/api/widgets/containers/templates/layout_applist.mak
+++ b/moksha/api/widgets/containers/templates/layout_applist.mak
@@ -1,6 +1,6 @@
<div id="${category['id']}" class="ui-sortable ${category['css_class']}">
% for app in category['apps']:
- <span class="sort ${app['css_class']}">
+ <div class="app ${app['css_class']}">
% if app['label']:
<h3>${app['label']}</h3>
% endif
@@ -31,6 +31,6 @@
</script>
% endif
- </span>
+ </div>
% endfor
</div>
15 years, 2 months
moksha/lib
by John (J5) Palmieri
moksha/lib/helpers.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
New commits:
commit fc76d3d2a76c0d447fc33c08f67dcf66b61d0886
Author: John (J5) Palmieri <johnp(a)redhat.com>
Date: Thu Apr 2 10:55:52 2009 -0400
make sure the css class is passed in if we swap an app out for a placeholder
diff --git a/moksha/lib/helpers.py b/moksha/lib/helpers.py
index eb800d2..71ae5b8 100644
--- a/moksha/lib/helpers.py
+++ b/moksha/lib/helpers.py
@@ -320,7 +320,9 @@ class MokshaApp(App):
if not moksha.apps.has_key(self.app):
return MokshaWidget(self.label, 'placeholder',
self.content_id,
- {'appname':self.app}, self.auth).process(d)
+ {'appname':self.app},
+ self.auth,
+ self.css_class).process(d)
else:
results = super(MokshaApp, self).process(d)
return results
15 years, 2 months
moksha/public
by John (J5) Palmieri
moksha/public/javascript/moksha.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
New commits:
commit 5d02733057eabafaba6e774f80895a73d76b9de1
Author: John (J5) Palmieri <johnp(a)redhat.com>
Date: Wed Apr 1 18:04:02 2009 -0400
send an error message back if a page section can no load
diff --git a/moksha/public/javascript/moksha.js b/moksha/public/javascript/moksha.js
index 382b3bd..854caf8 100644
--- a/moksha/public/javascript/moksha.js
+++ b/moksha/public/javascript/moksha.js
@@ -239,7 +239,7 @@ moksha = {
if (moksha_debug)
console.log(err);
- $msg.html(error);
+ $msg.html('Error loading the data for this page element');
}
}
15 years, 2 months
moksha/public
by John (J5) Palmieri
moksha/public/javascript/ui/moksha.ui.grid.js | 25 ++++++++++++++-----------
1 file changed, 14 insertions(+), 11 deletions(-)
New commits:
commit 585735902352a30a1a6472e752a2a9331c873e06
Author: John (J5) Palmieri <johnp(a)redhat.com>
Date: Wed Apr 1 17:54:04 2009 -0400
reformat alpha pager
diff --git a/moksha/public/javascript/ui/moksha.ui.grid.js b/moksha/public/javascript/ui/moksha.ui.grid.js
index 5104d28..0e276cf 100644
--- a/moksha/public/javascript/ui/moksha.ui.grid.js
+++ b/moksha/public/javascript/ui/moksha.ui.grid.js
@@ -406,7 +406,7 @@
if (typeof(curr_alpha) == 'undefined')
current_alpha = '';
- var pager = $('<span />');
+ var pager = $('<ul />');
var goto_page = function() {
var page_jump = $(this).data('alpha_page.moksha_grid');
self.goto_alpha_page(page_jump);
@@ -416,25 +416,28 @@
for (i in alph) {
var a = alph[i];
- var page = a;
+ var page = $('<li />').html(a).addClass('page-button').addClass('current-button');
if (a!=curr_alpha) {
- page = $('<a href="javascript:void(0)"></a>').html(a);
+ page.removeClass('current-button');
+
+ var page_link = $('<a href="javascript:void(0)"></a>').html(a);
+ page_link.data('alpha_page.moksha_grid', a);
+ page_link.click(goto_page);
- page.data('alpha_page.moksha_grid', a);
- page.click(goto_page);
+ page.html(page_link);
}
- pager.append(" ");
pager.append(page);
- pager.append(" ");
}
- var page = 'All'
+ var page = $('<li>All</li>').addClass('page-button').addClass('current-button');
if (curr_alpha != '') {
- page = $('<a href="javascript:void(0)"></a>').html('All');
+ var page_link = $('<a href="javascript:void(0)"></a>').html('All');
+
+ page_link.data('alpha_page.moksha_grid', '');
+ page_link.click(goto_page);
- page.data('alpha_page.moksha_grid', '');
- page.click(goto_page);
+ page.html(page_link);
}
pager.append(page);
15 years, 2 months
moksha/public
by John (J5) Palmieri
moksha/public/javascript/ui/moksha.ui.grid.js | 44 +++++++++++++++-----------
1 file changed, 27 insertions(+), 17 deletions(-)
New commits:
commit 35f7463066f57427c888a68d19762b16850c96e2
Author: John (J5) Palmieri <johnp(a)redhat.com>
Date: Wed Apr 1 17:46:28 2009 -0400
reformat numerical pager and handle json conversion errors gracefully
diff --git a/moksha/public/javascript/ui/moksha.ui.grid.js b/moksha/public/javascript/ui/moksha.ui.grid.js
index 0181a3c..5104d28 100644
--- a/moksha/public/javascript/ui/moksha.ui.grid.js
+++ b/moksha/public/javascript/ui/moksha.ui.grid.js
@@ -7,7 +7,13 @@
var o = self.options;
if (typeof(o.filters != 'object')) {
- self.options.filters = $.secureEvalJSON(o.filters);
+ try {
+ self.options.filters = $.secureEvalJSON(o.filters);
+ } catch(e) {
+ self.options.filters = {};
+ if (moksha_debug)
+ console.log(e);
+ }
}
// add placeholder for row appends
@@ -372,13 +378,13 @@
self.$overlay_div = $overlay;
var $pager_top_placeholder = $('<div></div>').addClass(o.pagerTopClass);
- $pager_top_placeholder.append($("<span></span>").addClass('pager'));
+ $pager_top_placeholder.append($("<div></div>").addClass('pager'));
$pager_top_placeholder.insertBefore(self.element);
self.$pager_top_placeholder = $pager_top_placeholder;
var $pager_bottom_placeholder = $('<div></div>').addClass(o.pagerBottomClass);
- $pager_bottom_placeholder.append($("<span />").addClass('message'));
- $pager_bottom_placeholder.append($("<span></span>").addClass('pager'));
+ $pager_bottom_placeholder.append($("<div />").addClass('message'));
+ $pager_bottom_placeholder.append($("<div></div>").addClass('pager'));
$pager_bottom_placeholder.insertAfter(self.element);
self.$pager_bottom_placeholder = $pager_bottom_placeholder;
@@ -447,7 +453,7 @@
var next_page = curr_page + 1;
- var pager = $('<span />');
+ var pager = $('<ul />');
var goto_page = function() {
var page_jump = $(this).data('page.moksha_grid');
self.goto_page(page_jump);
@@ -475,28 +481,32 @@
for (i in page_list) {
var page_num = page_list[i];
- var page = page_num;
- if (page != curr_page) {
- page = $('<a href="javascript:void(0)"></a>').html(page_num);
+ var page = $('<li></li>').html(page_num).addClass('page-button').addClass('current-page');
+ if (page_num != curr_page) {
+ page.removeClass('current-page');
+ var page_link = $('<a href="javascript:void(0)"></a>').html(page_num);
- page.data('page.moksha_grid', page_num);
- page.click(goto_page);
+ page_link.data('page.moksha_grid', page_num);
+ page_link.click(goto_page);
+
+ page.html(page_link);
}
- pager.append(" ");
pager.append(page);
- pager.append(" ");
}
- if (curr_page < total_pages) {
- var page = $('<a href="javascript:void(0)"></a>').html('Next');
+ var page = $("<li>Next</li>").addClass('page-button').addClass('next-page');
- page.data('page.moksha_grid', next_page);
- page.click(goto_page);
- pager.append(page);
+ if (curr_page < total_pages) {
+ var page_link = $('<a href="javascript:void(0)"></a>').html('Next');
+ page_link.data('page.moksha_grid', next_page);
+ page_link.click(goto_page);
+ page.html(page_link);
}
+ pager.append(page);
+
return(pager);
},
15 years, 2 months
moksha/api moksha/public
by John (J5) Palmieri
moksha/api/widgets/grid.py | 3 -
moksha/public/javascript/ui/moksha.ui.grid.js | 71 ++++++++++++++++++++++++++
2 files changed, 73 insertions(+), 1 deletion(-)
New commits:
commit 76b3c0faecb43a423f513c960ca35afd1df17b56
Author: John (J5) Palmieri <johnp(a)redhat.com>
Date: Wed Apr 1 15:02:53 2009 -0400
alpha pager now works
diff --git a/moksha/api/widgets/grid.py b/moksha/api/widgets/grid.py
index 5d63284..e62b4ed 100644
--- a/moksha/api/widgets/grid.py
+++ b/moksha/api/widgets/grid.py
@@ -21,7 +21,7 @@ class Grid(FormField):
params= ['rows_per_page', 'page_num', 'total_rows',
'filters', 'unique_key', 'sort_key', 'sort_order',
'row_template', 'resource', 'resource_path',
- 'loading_throbber', 'uid', 'more_link']
+ 'loading_throbber', 'uid', 'more_link', 'alphaPager']
hidden = True # hide from the moksha main menu
rows_per_page = 10
@@ -36,6 +36,7 @@ class Grid(FormField):
resource_path = None
loading_throbber = None
more_link = None
+ alphaPager = False
def update_params(self, d):
super(Grid, self).update_params(d)
diff --git a/moksha/public/javascript/ui/moksha.ui.grid.js b/moksha/public/javascript/ui/moksha.ui.grid.js
index 53ece3b..0181a3c 100644
--- a/moksha/public/javascript/ui/moksha.ui.grid.js
+++ b/moksha/public/javascript/ui/moksha.ui.grid.js
@@ -6,6 +6,10 @@
var self = this;
var o = self.options;
+ if (typeof(o.filters != 'object')) {
+ self.options.filters = $.secureEvalJSON(o.filters);
+ }
+
// add placeholder for row appends
self.$rowplaceholder = jQuery('<span />').addClass('moksha_rowplaceholder');
self.$rowplaceholder.hide();
@@ -168,6 +172,19 @@
this.request_data_refresh();
},
+ goto_alpha_page: function(prefix) {
+ if (typeof(prefix) == 'undefined')
+ prefix = '';
+
+ if (typeof(this.options.filters) != 'object')
+ this.options.filters = {}
+
+ this.options.filters.prefix = prefix;
+ this.options.page_num = 1;
+
+ this.request_data_refresh();
+ },
+
request_update: function(search_criteria) {
var self = this;
@@ -233,6 +250,11 @@
pager = self._generate_numerical_pager(tr, sr, rpp);
$('.pager', self.$pager_bottom_placeholder).html(pager);
+
+ if (o.alphaPager) {
+ pager = self._generate_alpha_pager();
+ $('.pager', self.$pager_top_placeholder).html(pager);
+ }
}
var dispatch_data = {}
@@ -349,6 +371,11 @@
self.element.parent().prepend($overlay);
self.$overlay_div = $overlay;
+ var $pager_top_placeholder = $('<div></div>').addClass(o.pagerTopClass);
+ $pager_top_placeholder.append($("<span></span>").addClass('pager'));
+ $pager_top_placeholder.insertBefore(self.element);
+ self.$pager_top_placeholder = $pager_top_placeholder;
+
var $pager_bottom_placeholder = $('<div></div>').addClass(o.pagerBottomClass);
$pager_bottom_placeholder.append($("<span />").addClass('message'));
$pager_bottom_placeholder.append($("<span></span>").addClass('pager'));
@@ -366,6 +393,49 @@
return pager;
},
+ _generate_alpha_pager: function () {
+ var self = this;
+ var o = self.options;
+ var curr_alpha = o.filters.prefix;
+ if (typeof(curr_alpha) == 'undefined')
+ current_alpha = '';
+
+ var pager = $('<span />');
+ var goto_page = function() {
+ var page_jump = $(this).data('alpha_page.moksha_grid');
+ self.goto_alpha_page(page_jump);
+ }
+
+ var alph = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
+ for (i in alph) {
+ var a = alph[i];
+
+ var page = a;
+ if (a!=curr_alpha) {
+ page = $('<a href="javascript:void(0)"></a>').html(a);
+
+ page.data('alpha_page.moksha_grid', a);
+ page.click(goto_page);
+ }
+
+ pager.append(" ");
+ pager.append(page);
+ pager.append(" ");
+ }
+
+ var page = 'All'
+ if (curr_alpha != '') {
+ page = $('<a href="javascript:void(0)"></a>').html('All');
+
+ page.data('alpha_page.moksha_grid', '');
+ page.click(goto_page);
+ }
+
+ pager.append(page);
+
+ return pager;
+ },
+
_generate_numerical_pager: function (total_rows, start_row, rows_per_page) {
var self = this;
var o = self.options;
@@ -502,6 +572,7 @@
pagerTopClass: 'moksha-grid-pager-top',
pagerBottomClass: 'moksha-grid-pager-bottom',
pagerPageLimit: 10,
+ alphaPager: false,
more_link: null,
loading_throbber: ["Loading", // list of img urls or text
"Loading.",
15 years, 2 months
moksha/connector
by John (J5) Palmieri
moksha/connector/connector.py | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
New commits:
commit 90d8a01a1d3cc33d880b525ee8914df570865b48
Author: John (J5) Palmieri <johnp(a)redhat.com>
Date: Wed Apr 1 13:24:55 2009 -0400
make sure default sort order works
diff --git a/moksha/connector/connector.py b/moksha/connector/connector.py
index c8cbfc5..cf07645 100644
--- a/moksha/connector/connector.py
+++ b/moksha/connector/connector.py
@@ -179,7 +179,7 @@ class IQuery(object):
start_row = 0,
rows_per_page = 10,
sort_col = None,
- sort_order = -1,
+ sort_order = None,
filters = {}):
""" Implement this method if the resource provides a query interface.
@@ -241,6 +241,9 @@ class IQuery(object):
if not sort_col:
sort_col = self.get_default_sort_col(resource_path)
+ if not sort_order:
+ sort_order = self.get_default_sort_order(resource_path)
+
if params == None:
params = {}
@@ -293,6 +296,13 @@ class IQuery(object):
def get_capabilities(self):
return self._paths
+ def get_default_sort_order(self, path):
+ p = self._paths.get(path)
+ if p:
+ return p['default_sort_order']
+
+ return None
+
def get_default_sort_col(self, path):
p = self._paths.get(path)
if p:
15 years, 2 months