| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- $(document).ready(function()
- {
- /* Set drag event for save report sort. */
- $('#reportList').on('sort.sortable', function(e, data)
- {
- $.post(createLink('workflowreport', 'sort'), data.orders, function(response)
- {
- if(response.result == 'success')
- {
- return location.reload();
- }
- else
- {
- bootbox.alert(response.message);
- }
- }, 'json');
- });
- /* Click title to load chart. */
- $('#reportList tr').find("td:not(':first,:last')").click(function()
- {
- preview($(this).parent().data('id'));
- });
- if(window.reportSize == 0)
- {
- $('.existReport').hide();
- $('.noReport').show();
- }
- else
- {
- if(window.id)
- {
- preview(window.id);
- }
- else
- {
- $('#reportList tr:first td:eq(1)').click();
- }
- }
- $(document).on('change', "input[name='type'][type='radio']", function()
- {
- toggleSelect();
- });
- $(document).on('change', "input[name='countType'][type='radio']", function()
- {
- var countType = $("input[name='countType'][type='radio']:checked").val();
- $('#fieldsSelect').parent().parent().toggle(countType != 'count');
- });
- /* Display fields of current module when dimension selected. */
- $(document).on('change', '#dimension', function()
- {
- var dimension = $("#dimension").val();
- var module = dimension.substr(0, dimension.indexOf('_'));
- /* Display fields where belong to dimension's sub module and main table module if dimension is sub module. */
- if(module == window.moduleName)
- {
- $('#fields option').show();
- }
- else
- {
- $('#fields option').hide();
- $('#fields option[value^=' + window.moduleName + '_]').show();
- $('#fields option[value^=' + module + '_]').show();
- /* String is pie fields,object is line or bar fields. */
- fieldValue = $("#fields").val();
- if(typeof fieldValue == 'string')
- {
- if(fieldValue.indexOf(module + '_') != 0 && fieldValue.indexOf(window.moduleName + '_') != 0) $("#fields").val("");
- }
- else
- {
- var fieldsVal = [];
- $.each(fieldValue, function(i, val)
- {
- if(val.indexOf(window.moduleName + '_') == 0 || val.indexOf(module + '_') == 0) fieldsVal.push(val);
- });
- $("#fields").val(fieldsVal)
- }
- }
- $('#fields').trigger('chosen:updated');
- /* Display granularity if dimension control is date or datetime. */
- var isDate = window.controlPairs[dimension] == 'date' || window.controlPairs[dimension] == 'datetime';
- $('#granularity_chosen').toggle(isDate);
- $('#dimension_chosen a input').toggleClass('dimension-half-radius', isDate);
- $('#dimension_chosen a').toggleClass('dimension-all-radius dimension-half-radius');
- isDate ? $('#granularity').removeAttr("disabled") : $('#granularity').attr("disabled","disabled");
- });
- });
- /* Toggle which select to display. */
- function toggleSelect()
- {
- var type = $("input[name='type'][type='radio']:checked").val();
- if(type == 'pie')
- {
- $('#fields').removeAttr('multiple');
- }
- else
- {
- $('#fields').attr('multiple', 'multiple');
- }
- $('#fields').trigger('chosen:updated');
- }
- /* Load preview chart. */
- function preview(id)
- {
- let url = createLink('workflowreport', 'ajaxPreview', 'id=' + id);
- $('.existReport').load(url, function()
- {
- $('#reportList tr').removeClass('checked row-check-begin row-check-end');
- $('#reportList tr[data-id=' + id + ']').addClass('checked row-check-begin row-check-end');
- });
- }
|