<a href="#"
class="list-group-item sl-resources active"
- style='display: inline-block !important;'
+ style='display: inline-block !important; font-size: inherit;'
id="{{ domid }}__all"
data-status="all"
title="View resources that are available to be reserved."
<a href="#"
class="list-group-item sl-resources"
- style='display: inline-block !important;'
+ style='display: inline-block !important; font-size: inherit;'
id="{{ domid }}__reserved"
data-status="reserved"
title="View resources that you have previously reserved for the slice."
</a>
<a href="#" class="list-group-item sl-resources"
- style='display: inline-block !important;'
+ style='display: inline-block !important; font-size: inherit;'
id="{{ domid }}__unconfigured"
data-status="unconfigured"
title="View resources that you have selected to add to your slice, that require configuration before they can be reserved. Hover you mouse over the symbol next to the checkbox for more details."
</a>
<a href="#" class="list-group-item sl-resources"
- style='display: inline-block !important;'
+ style='display: inline-block !important; font-size: inherit;'
id="{{ domid }}__pending"
data-status="pending"
title="View pending changes to your slice: resources that you have selected to add, and resources that you have selected to remove. Click on the Apply button to apply those changes, or on the Cancel button to cancel them."
\r
$scope.select = function(index, model_lease, model_resource)\r
{\r
- var data;\r
+ var data, resource_granularity;\r
+\r
+ //resource_granularity = model_resource.granularity === undefined ? RESOURCE_DEFAULT_GRANULARITY : model_resource.granularity;\r
\r
console.log("Selected", index, model_lease, model_resource);\r
\r
var day_timestamp = SchedulerDateSelected.getTime() / 1000;\r
- var start_time = day_timestamp + index * model_resource.granularity;\r
- var end_time = day_timestamp + (index + 1) * model_resource.granularity;\r
+ var start_time = day_timestamp + index * model_resource.granularity; // XXX resource_granularity\r
+ var end_time = day_timestamp + (index + 1) * model_resource.granularity; //\r
var start_date = new Date(start_time * 1000);\r
var end_date = new Date(end_time * 1000);\r
\r
var resource = jQuery.extend(true, {}, record);\r
\r
// Fix granularity\r
- resource.granularity = typeof(resource.granularity) == "number" ? resource.granularity : RESOURCE_DEFAULT_GRANULARITY;\r
+ //resource_granularity = ((resource.granularity === undefined) || (typeof(resource.granularity) != "number")) ? RESOURCE_DEFAULT_GRANULARITY : resource.granularity;\r
+ if (typeof(resource.granularity) != "number")\r
+ resource.granularity = RESOURCE_DEFAULT_GRANULARITY;\r
resource.leases = []; // a list of occupied timeslots\r
\r
self.scope_resources_by_key[resource['urn']] = resource;\r
/* Limit the display to the current day */\r
id_end = this._all_slots.length / colspan_lease\r
}\r
+ lease_status = manifold.query_store.get_record_state(this.options.query_lease_uuid, lease_key, STATE_SET);\r
+ // the same slots might be affected multiple times.\r
+ // PENDING_IN + PENDING_OUT => IN \r
+ //\r
+ // RESERVED vs SELECTED !\r
+ //\r
+ // PENDING !!\r
+ switch(lease_status) {\r
+ case STATE_SET_IN:\r
+ lease_class = 'selected'; // my leases\r
+ lease_success = '';\r
+ break;\r
+ case STATE_SET_IN_SUCCESS:\r
+ lease_class = 'selected'; // my leases\r
+ lease_success = 'success';\r
+ case STATE_SET_OUT_FAILURE:\r
+ lease_class = 'selected'; // my leases\r
+ lease_success = 'failure';\r
+ break;\r
+ case STATE_SET_OUT:\r
+ lease_class = 'reserved'; // other leases\r
+ lease_success = '';\r
+ break;\r
+ case STATE_SET_OUT_SUCCESS:\r
+ lease_class = 'free'; // other leases\r
+ lease_success = 'success';\r
+ break;\r
+ case STATE_SET_IN_FAILURE:\r
+ lease_class = 'free'; // other leases\r
+ lease_success = 'failure';\r
+ break;\r
+ case STATE_SET_IN_PENDING:\r
+ lease_class = 'pendingin';\r
+ lease_success = '';\r
+ break;\r
+ case STATE_SET_OUT_PENDING:\r
+ // pending_in & pending_out == IN == replacement\r
+ if (resource.leases[i].status == 'pendingin')\r
+ lease_class = 'pendingin'\r
+ else\r
+ lease_class = 'pendingout';\r
+ lease_success = '';\r
+ break;\r
+ \r
+ }\r
\r
for (i = id_start; i < id_end; i++) {\r
- // the same slots might be affected multiple times.\r
- // PENDING_IN + PENDING_OUT => IN \r
- //\r
- // RESERVED vs SELECTED !\r
- //\r
- // PENDING !!\r
- lease_status = manifold.query_store.get_record_state(this.options.query_lease_uuid, lease_key, STATE_SET);\r
- switch(lease_status) {\r
- case STATE_SET_IN:\r
- lease_class = 'selected'; // my leases\r
- lease_success = '';\r
- break;\r
- case STATE_SET_IN_SUCCESS:\r
- lease_class = 'selected'; // my leases\r
- lease_success = 'success';\r
- case STATE_SET_OUT_FAILURE:\r
- lease_class = 'selected'; // my leases\r
- lease_success = 'failure';\r
- break;\r
- case STATE_SET_OUT:\r
- lease_class = 'reserved'; // other leases\r
- lease_success = '';\r
- break;\r
- case STATE_SET_OUT_SUCCESS:\r
- lease_class = 'free'; // other leases\r
- lease_success = 'success';\r
- break;\r
- case STATE_SET_IN_FAILURE:\r
- lease_class = 'free'; // other leases\r
- lease_success = 'failure';\r
- break;\r
- case STATE_SET_IN_PENDING:\r
- lease_class = 'pendingin';\r
- lease_success = '';\r
- break;\r
- case STATE_SET_OUT_PENDING:\r
- // pending_in & pending_out == IN == replacement\r
- if (resource.leases[i].status == 'pendingin')\r
- lease_class = 'pendingin'\r
- else\r
- lease_class = 'pendingout';\r
- lease_success = '';\r
- break;\r
- \r
- }\r
resource.leases[i].status = lease_class;\r
resource.leases[i].success = lease_success;\r
}\r
init_cell = (new Date().getHours() - 1) * 3600 / self._granularity;\r
if (init_cell > num_hidden_cells)\r
init_cell = num_hidden_cells;\r
- \r
+\r
$('#tblSlider').slider({\r
min: 0,\r
max: num_hidden_cells,\r
console.log(slice_users);
}
});
- }); // post rest/user
- }
+ }); // post rest/use
+
+ $('button#addusers').click(function() {
+ $.post("/update/slice/",{'filters':{'slice_hrn':'{{slice}}'},'params':{'users':slice_users}}, function(data) {
+ if(data.success){
+ // TODO: highlight row after success
+ //$('tr[id="'+record_id+'"]').highlight();
+ mysliceAlert('Success: slice updated','success', true);
+ }else{
+ mysliceAlert('Rest Error for: '+data.error,'warning', true);
+ }
+ }); // post update slice
+
+ // TODO: refresh table
+ //window.location="/portal/institution#slices";
+ }); // button#addusers click
+
+ } // get_users_in_slice
$(document).ready(function() {
// TODO: Add a filter based on the list of authorities
get_users_in_slice("{{user_details.parent_authority}}");
- $('button#addusers').click(function() {
- $.post("/update/slice/",{'filters':{'slice_hrn':'{{slice}}'},'params':{'users':slice_users}}, function(data) {
- if(data.success){
- // TODO: highlight row after success
- //$('tr[id="'+record_id+'"]').highlight();
- mysliceAlert('Success: slice updated','success', true);
- }else{
- mysliceAlert('Rest Error for: '+data.error,'warning', true);
- }
- }); // post update slice
-
- // TODO: refresh table
- //window.location="/portal/institution#slices";
-
- }); // button#addusers click
$('[title!=""]').qtip();
}); // document ready
</script>