'allocation_total'
];
+var adminPermOrgs = [];
+
function initPage() {
contextOrg = openils.User.user.ws_ou();
dojo.connect(refreshButton, 'onClick', function() { rolloverMode = false; gridDataLoader(); });
new openils.User().buildPermOrgSelector(
- 'ADMIN_ACQ_FUND', contextOrgSelector, contextOrg, connect);
+ ['ADMIN_ACQ_FUND', 'VIEW_FUND'],
+ contextOrgSelector, contextOrg, connect);
dojo.byId('oils-acq-rollover-ctxt-org').innerHTML =
fieldmapper.aou.findOrgUnit(contextOrg).shortname();
loadYearSelector();
lfGrid.dataLoader = gridDataLoader;
- loadFundGrid(new openils.CGI().param('year') || new Date().getFullYear().toString());
+
+ new openils.User().getPermOrgList(
+ 'ADMIN_ACQ_FUND',
+ function(list) {
+ adminPermOrgs = list;
+ loadFundGrid(
+ new openils.CGI().param('year')
+ || new Date().getFullYear().toString());
+ },
+ true,
+ true
+ );
}
function gridDataLoader() {
offset: lfGrid.displayOffset,
flesh : 1,
flesh_fields : {acqf : fundFleshFields},
+
+ // by default, sort funds I can edit to the front
+ order_by : [{
+ 'class' : 'acqf',
+ field : 'org',
+ compare : {'in' : adminPermOrgs},
+ direction : 'desc'
+ }],
+
onresponse : function(r, obj) {
if(fund = openils.Util.readResponse(r)) {
fundFleshFields.forEach(function(ff) {
fieldmapper.standardRequest(
['open-ils.acq', 'open-ils.acq.fund.org.years.retrieve'],
{ async : true,
- params : [openils.User.authtoken],
+ params : [openils.User.authtoken, {}, {limit_perm : 'VIEW_FUND'}],
oncomplete : function(r) {
var yearList = openils.Util.readResponse(r);