├── LICENSE.txt ├── README.md ├── The Restore Point Simulator.docx ├── URI.js ├── bandwidth ├── URI.js ├── filesize.js ├── humanize-duration.js ├── index-reloaded.html ├── index.html └── jquery-2.1.4.min.js ├── external └── jquery │ └── jquery.js ├── filesize-mod.js ├── filesize.min.js ├── forkme.html ├── help.pdf ├── images ├── Thumbs.db ├── ui-bg_diagonals-thick_18_b81900_40x40.png ├── ui-bg_diagonals-thick_20_666666_40x40.png ├── ui-bg_flat_10_000000_40x100.png ├── ui-bg_highlight-soft_75_ffe45c_1x100.png ├── ui-icons_222222_256x240.png ├── ui-icons_228ef1_256x240.png ├── ui-icons_ef8c08_256x240.png ├── ui-icons_ffd27a_256x240.png └── ui-icons_ffffff_256x240.png ├── index.html ├── jquery-2.0.1.min.js ├── jquery-mini.js ├── jquery-ui.css ├── jquery-ui.js ├── jquery-ui.min.css ├── jquery-ui.min.js ├── jquery-ui.structure.css ├── jquery-ui.structure.min.css ├── jquery-ui.theme.css ├── jquery-ui.theme.min.css ├── moment.min.js ├── pureengine.css ├── pureengine.js ├── releasenotes ├── README.md ├── index.html └── markdown.min.js ├── rpsimg ├── Thumbs.db ├── active.png ├── arrowdown.png ├── arrowup.png ├── canvasrenderimg.svg ├── cgfs.png ├── dragme.png ├── full.png ├── gfs.png ├── gfsl.png ├── help.png ├── help.xcf ├── inc-up-img2.png ├── linked.png ├── nohtml5.png └── rev-down-img2.png ├── spin.min.js ├── test_engine.js ├── test_gfsv9.js ├── test_gfsv9active.js ├── test_pretty.js └── test_refs.js /LICENSE.txt: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Timothy Dewin 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Notice ! 2 | Please notice that there is an official effort in place on: 3 | https://calculator.veeam.com/vbr/ 4 | 5 | As such, this project is now deprecated 6 | 7 | # RPS 8 | Restore Point Simulator for Veeam 9 | 10 | The Restore Point Simulator (RPS) allows you to simulate restore points created by Veeam Backup & Replication. This allows you to better understand what specific settings do in the scheduler and the impact on backup size. Alternatively you can use it to size a backup repository 11 | 12 | Live version can be found on http://vee.am/rps or just the master branch dev version here http://tdewin.github.io/rps/ 13 | -------------------------------------------------------------------------------- /The Restore Point Simulator.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/The Restore Point Simulator.docx -------------------------------------------------------------------------------- /bandwidth/filesize.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | /** 4 | * filesize 5 | * 6 | * @author Jason Mulligan 7 | * @copyright 2015 Jason Mulligan 8 | * @license BSD-3 9 | * @link http://filesizejs.com 10 | * @module filesize 11 | * @version 3.1.2 12 | */ 13 | (function (global) { 14 | var bit = /b$/; 15 | var si = { 16 | bits: ["B", "kb", "Mb", "Gb", "Tb", "Pb", "Eb", "Zb", "Yb"], 17 | bytes: ["B", "kB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"] 18 | }; 19 | 20 | /** 21 | * filesize 22 | * 23 | * @method filesize 24 | * @param {Mixed} arg String, Int or Float to transform 25 | * @param {Object} descriptor [Optional] Flags 26 | * @return {String} Readable file size String 27 | */ 28 | var filesize = function (arg) { 29 | var descriptor = arguments[1] === undefined ? {} : arguments[1]; 30 | 31 | var result = []; 32 | var skip = false; 33 | var val = 0; 34 | var e = undefined, 35 | base = undefined, 36 | bits = undefined, 37 | ceil = undefined, 38 | neg = undefined, 39 | num = undefined, 40 | output = undefined, 41 | round = undefined, 42 | unix = undefined, 43 | spacer = undefined, 44 | suffixes = undefined; 45 | 46 | if (isNaN(arg)) { 47 | throw new Error("Invalid arguments"); 48 | } 49 | 50 | bits = descriptor.bits === true; 51 | unix = descriptor.unix === true; 52 | base = descriptor.base !== undefined ? descriptor.base : 2; 53 | round = descriptor.round !== undefined ? descriptor.round : unix ? 1 : 2; 54 | spacer = descriptor.spacer !== undefined ? descriptor.spacer : unix ? "" : " "; 55 | suffixes = descriptor.suffixes !== undefined ? descriptor.suffixes : {}; 56 | output = descriptor.output !== undefined ? descriptor.output : "string"; 57 | e = descriptor.exponent !== undefined ? descriptor.exponent : -1; 58 | num = Number(arg); 59 | neg = num < 0; 60 | ceil = base > 2 ? 1000 : 1024; 61 | 62 | // Flipping a negative number to determine the size 63 | if (neg) { 64 | num = -num; 65 | } 66 | 67 | // Zero is now a special case because bytes divide by 1 68 | if (num === 0) { 69 | result[0] = 0; 70 | 71 | if (unix) { 72 | result[1] = ""; 73 | } else { 74 | result[1] = "B"; 75 | } 76 | } else { 77 | // Determining the exponent 78 | if (e === -1 || isNaN(e)) { 79 | e = Math.floor(Math.log(num) / Math.log(ceil)); 80 | } 81 | 82 | // Exceeding supported length, time to reduce & multiply 83 | if (e > 8) { 84 | val = val * (1000 * (e - 8)); 85 | e = 8; 86 | } 87 | 88 | if (base === 2) { 89 | val = num / Math.pow(2, e * 10); 90 | } else { 91 | val = num / Math.pow(1000, e); 92 | } 93 | 94 | if (bits) { 95 | val = val * 8; 96 | 97 | if (val > ceil) { 98 | val = val / ceil; 99 | e++; 100 | } 101 | } 102 | 103 | result[0] = Number(val.toFixed(e > 0 ? round : 0)); 104 | result[1] = si[bits ? "bits" : "bytes"][e]; 105 | 106 | if (!skip && unix) { 107 | if (bits && bit.test(result[1])) { 108 | result[1] = result[1].toLowerCase(); 109 | } 110 | 111 | result[1] = result[1].charAt(0); 112 | 113 | if (result[1] === "B") { 114 | result[0] = Math.floor(result[0]); 115 | result[1] = ""; 116 | } else if (!bits && result[1] === "k") { 117 | result[1] = "K"; 118 | } 119 | } 120 | } 121 | 122 | // Decorating a 'diff' 123 | if (neg) { 124 | result[0] = -result[0]; 125 | } 126 | 127 | // Applying custom suffix 128 | result[1] = suffixes[result[1]] || result[1]; 129 | 130 | // Returning Array, Object, or String (default) 131 | if (output === "array") { 132 | return result; 133 | } 134 | 135 | if (output === "exponent") { 136 | return e; 137 | } 138 | 139 | if (output === "object") { 140 | return { value: result[0], suffix: result[1] }; 141 | } 142 | 143 | return result.join(spacer); 144 | }; 145 | 146 | // CommonJS, AMD, script tag 147 | if (typeof exports !== "undefined") { 148 | module.exports = filesize; 149 | } else if (typeof define === "function") { 150 | define(function () { 151 | return filesize; 152 | }); 153 | } else { 154 | global.filesize = filesize; 155 | } 156 | })(typeof global !== "undefined" ? global : window); -------------------------------------------------------------------------------- /bandwidth/humanize-duration.js: -------------------------------------------------------------------------------- 1 | // HumanizeDuration.js - http://git.io/j0HgmQ 2 | 3 | (function() { 4 | 5 | var UNITS = { 6 | year: 31557600000, 7 | month: 2629800000, 8 | week: 604800000, 9 | day: 86400000, 10 | hour: 3600000, 11 | minute: 60000, 12 | second: 1000, 13 | millisecond: 1 14 | }; 15 | 16 | var languages = { 17 | ar: { 18 | year: function(c) { return ((c === 1) ? "سنة" : "سنوات"); }, 19 | month: function(c) { return ((c === 1) ? "شهر" : "أشهر"); }, 20 | week: function(c) { return ((c === 1) ? "أسبوع" : "أسابيع"); }, 21 | day: function(c) { return ((c === 1) ? "يوم" : "أيام"); }, 22 | hour: function(c) { return ((c === 1) ? "ساعة" : "ساعات"); }, 23 | minute: function(c) { return ((c === 1) ? "دقيقة" : "دقائق"); }, 24 | second: function(c) { return ((c === 1) ? "ثانية" : "ثواني"); }, 25 | millisecond: function(c) { return ((c === 1) ? "جزء من الثانية" : "أجزاء من الثانية"); } 26 | }, 27 | ca: { 28 | year: function(c) { return "any" + ((c !== 1) ? "s" : ""); }, 29 | month: function(c) { return "mes" + ((c !== 1) ? "os" : ""); }, 30 | week: function(c) { return "setman" + ((c !== 1) ? "es" : "a"); }, 31 | day: function(c) { return "di" + ((c !== 1) ? "es" : "a"); }, 32 | hour: function(c) { return "hor" + ((c !== 1) ? "es" : "a"); }, 33 | minute: function(c) { return "minut" + ((c !== 1) ? "s" : ""); }, 34 | second: function(c) { return "segon" + ((c !== 1) ? "s" : ""); }, 35 | millisecond: function(c) { return "milisegon" + ((c !== 1) ? "s" : "" ); } 36 | }, 37 | da: { 38 | year: "år", 39 | month: function(c) { return "måned" + ((c !== 1) ? "er" : ""); }, 40 | week: function(c) { return "uge" + ((c !== 1) ? "r" : ""); }, 41 | day: function(c) { return "dag" + ((c !== 1) ? "e" : ""); }, 42 | hour: function(c) { return "time" + ((c !== 1) ? "r" : ""); }, 43 | minute: function(c) { return "minut" + ((c !== 1) ? "ter" : ""); }, 44 | second: function(c) { return "sekund" + ((c !== 1) ? "er" : ""); }, 45 | millisecond: function(c) { return "millisekund" + ((c !== 1) ? "er" : ""); } 46 | }, 47 | de: { 48 | year: function(c) { return "Jahr" + ((c !== 1) ? "e" : ""); }, 49 | month: function(c) { return "Monat" + ((c !== 1) ? "e" : ""); }, 50 | week: function(c) { return "Woche" + ((c !== 1) ? "n" : ""); }, 51 | day: function(c) { return "Tag" + ((c !== 1) ? "e" : ""); }, 52 | hour: function(c) { return "Stunde" + ((c !== 1) ? "n" : ""); }, 53 | minute: function(c) { return "Minute" + ((c !== 1) ? "n" : ""); }, 54 | second: function(c) { return "Sekunde" + ((c !== 1) ? "n" : ""); }, 55 | millisecond: function(c) { return "Millisekunde" + ((c !== 1) ? "n" : ""); } 56 | }, 57 | en: { 58 | year: function(c) { return "year" + ((c !== 1) ? "s" : ""); }, 59 | month: function(c) { return "month" + ((c !== 1) ? "s" : ""); }, 60 | week: function(c) { return "week" + ((c !== 1) ? "s" : ""); }, 61 | day: function(c) { return "day" + ((c !== 1) ? "s" : ""); }, 62 | hour: function(c) { return "hour" + ((c !== 1) ? "s" : ""); }, 63 | minute: function(c) { return "minute" + ((c !== 1) ? "s" : ""); }, 64 | second: function(c) { return "second" + ((c !== 1) ? "s" : ""); }, 65 | millisecond: function(c) { return "millisecond" + ((c !== 1) ? "s" : ""); } 66 | }, 67 | es: { 68 | year: function(c) { return "año" + ((c !== 1) ? "s" : ""); }, 69 | month: function(c) { return "mes" + ((c !== 1) ? "es" : ""); }, 70 | week: function(c) { return "semana" + ((c !== 1) ? "s" : ""); }, 71 | day: function(c) { return "día" + ((c !== 1) ? "s" : ""); }, 72 | hour: function(c) { return "hora" + ((c !== 1) ? "s" : ""); }, 73 | minute: function(c) { return "minuto" + ((c !== 1) ? "s" : ""); }, 74 | second: function(c) { return "segundo" + ((c !== 1) ? "s" : ""); }, 75 | millisecond: function(c) { return "milisegundo" + ((c !== 1) ? "s" : "" ); } 76 | }, 77 | fr: { 78 | year: function(c) { return "an" + ((c !== 1) ? "s" : ""); }, 79 | month: "mois", 80 | week: function(c) { return "semaine" + ((c !== 1) ? "s" : ""); }, 81 | day: function(c) { return "jour" + ((c !== 1) ? "s" : ""); }, 82 | hour: function(c) { return "heure" + ((c !== 1) ? "s" : ""); }, 83 | minute: function(c) { return "minute" + ((c !== 1) ? "s" : ""); }, 84 | second: function(c) { return "seconde" + ((c !== 1) ? "s" : ""); }, 85 | millisecond: function(c) { return "milliseconde" + ((c !== 1) ? "s" : ""); } 86 | }, 87 | hu: { 88 | year: "év", 89 | month: "hónap", 90 | week: "hét", 91 | day: "nap", 92 | hour: "óra", 93 | minute: "perc", 94 | second: "másodperc", 95 | millisecond: "ezredmásodperc" 96 | }, 97 | it: { 98 | year: function(c) { return "ann" + ((c !== 1) ? "i" : "o"); }, 99 | month: function(c) { return "mes" + ((c !== 1) ? "i" : "e"); }, 100 | week: function(c) { return "settiman" + ((c !== 1) ? "e" : "a"); }, 101 | day: function(c) { return "giorn" + ((c !== 1) ? "i" : "o"); }, 102 | hour: function(c) { return "or" + ((c !== 1) ? "e" : "a"); }, 103 | minute: function(c) { return "minut" + ((c !== 1) ? "i" : "o"); }, 104 | second: function(c) { return "second" + ((c !== 1) ? "i" : "o"); }, 105 | millisecond: function(c) { return "millisecond" + ((c !== 1) ? "i" : "o" ); } 106 | }, 107 | ja: { 108 | year: "年", 109 | month: "月", 110 | week: "週", 111 | day: "日", 112 | hour: "時間", 113 | minute: "分", 114 | second: "秒", 115 | millisecond: "ミリ秒" 116 | }, 117 | ko: { 118 | year: "년", 119 | month: "개월", 120 | week: "주일", 121 | day: "일", 122 | hour: "시간", 123 | minute: "분", 124 | second: "초", 125 | millisecond: "밀리 초" 126 | }, 127 | nl: { 128 | year: "jaar", 129 | month: function(c) { return (c === 1) ? "maand" : "maanden"; }, 130 | week: function(c) { return (c === 1) ? "week" : "weken"; }, 131 | day: function(c) { return (c === 1) ? "dag" : "dagen"; }, 132 | hour: "uur", 133 | minute: function(c) { return (c === 1) ? "minuut" : "minuten"; }, 134 | second: function(c) { return (c === 1) ? "seconde" : "seconden"; }, 135 | millisecond: function(c) { return (c === 1) ? "milliseconde" : "milliseconden"; } 136 | }, 137 | nob: { 138 | year: "år", 139 | month: function(c) { return "måned" + ((c !== 1) ? "er" : ""); }, 140 | week: function(c) { return "uke" + ((c !== 1) ? "r" : ""); }, 141 | day: function(c) { return "dag" + ((c !== 1) ? "er" : ""); }, 142 | hour: function(c) { return "time" + ((c !== 1) ? "r" : ""); }, 143 | minute: function(c) { return "minutt" + ((c !== 1) ? "er" : ""); }, 144 | second: function(c) { return "sekund" + ((c !== 1) ? "er" : ""); }, 145 | millisecond: function(c) { return "millisekund" + ((c !== 1) ? "er" : ""); } 146 | }, 147 | pl: { 148 | year: function(c) { return ["rok", "roku", "lata", "lat"][getPolishForm(c)]; }, 149 | month: function(c) { return ["miesiąc", "miesiąca", "miesiące", "miesięcy"][getPolishForm(c)]; }, 150 | week: function(c) { return ["tydzień", "tygodnia", "tygodnie", "tygodni"][getPolishForm(c)]; }, 151 | day: function(c) { return ["dzień", "dnia", "dni", "dni"][getPolishForm(c)]; }, 152 | hour: function(c) { return ["godzina", "godziny", "godziny", "godzin"][getPolishForm(c)]; }, 153 | minute: function(c) { return ["minuta", "minuty", "minuty", "minut"][getPolishForm(c)]; }, 154 | second: function(c) { return ["sekunda", "sekundy", "sekundy", "sekund"][getPolishForm(c)]; }, 155 | millisecond: function(c) { return ["milisekunda", "milisekundy", "milisekundy", "milisekund"][getPolishForm(c)]; } 156 | }, 157 | pt: { 158 | year: function(c) { return "ano" + ((c !== 1) ? "s" : ""); }, 159 | month: function(c) { return (c !== 1) ? "meses" : "mês"; }, 160 | week: function(c) { return "semana" + ((c !== 1) ? "s" : ""); }, 161 | day: function(c) { return "dia" + ((c !== 1) ? "s" : ""); }, 162 | hour: function(c) { return "hora" + ((c !== 1) ? "s" : ""); }, 163 | minute: function(c) { return "minuto" + ((c !== 1) ? "s" : ""); }, 164 | second: function(c) { return "segundo" + ((c !== 1) ? "s" : ""); }, 165 | millisecond: function(c) { return "milissegundo" + ((c !== 1) ? "s" : ""); } 166 | }, 167 | ru: { 168 | year: function(c) { return ["лет", "год", "года"][getRussianForm(c)]; }, 169 | month: function(c) { return ["месяцев", "месяц", "месяца"][getRussianForm(c)]; }, 170 | week: function(c) { return ["недель", "неделя", "недели"][getRussianForm(c)]; }, 171 | day: function(c) { return ["дней", "день", "дня"][getRussianForm(c)]; }, 172 | hour: function(c) { return ["часов", "час", "часа"][getRussianForm(c)]; }, 173 | minute: function(c) { return ["минут", "минута", "минуты"][getRussianForm(c)]; }, 174 | second: function(c) { return ["секунд", "секунда", "секунды"][getRussianForm(c)]; }, 175 | millisecond: function(c) { return ["миллисекунд", "миллисекунда", "миллисекунды"][getRussianForm(c)]; } 176 | }, 177 | sv: { 178 | year: "år", 179 | month: function(c) { return "månad" + ((c !== 1) ? "er" : ""); }, 180 | week: function(c) { return "veck" + ((c !== 1) ? "or" : "a"); }, 181 | day: function(c) { return "dag" + ((c !== 1) ? "ar" : ""); }, 182 | hour: function(c) { return "timm" + ((c !== 1) ? "ar" : "e"); }, 183 | minute: function(c) { return "minut" + ((c !== 1) ? "er" : ""); }, 184 | second: function(c) { return "sekund" + ((c !== 1) ? "er" : ""); }, 185 | millisecond: function(c) { return "millisekund" + ((c !== 1) ? "er" : ""); } 186 | }, 187 | tr: { 188 | year: "yıl", 189 | month: "ay", 190 | week: "hafta", 191 | day: "gün", 192 | hour: "saat", 193 | minute: "dakika", 194 | second: "saniye", 195 | millisecond: "milisaniye" 196 | }, 197 | "zh-CN": { 198 | year: "年", 199 | month: "个月", 200 | week: "周", 201 | day: "天", 202 | hour: "小时", 203 | minute: "分钟", 204 | second: "秒", 205 | millisecond: "毫秒" 206 | }, 207 | "zh-TW": { 208 | year: "年", 209 | month: "個月", 210 | week: "周", 211 | day: "天", 212 | hour: "小時", 213 | minute: "分鐘", 214 | second: "秒", 215 | millisecond: "毫秒" 216 | } 217 | }; 218 | 219 | // You can create a humanizer, which returns a function with defaults 220 | // parameters. 221 | function humanizer(passedOptions) { 222 | 223 | var result = function humanizer(ms, humanizerOptions) { 224 | var options = extend({}, result, humanizerOptions || {}); 225 | return doHumanization(ms, options); 226 | }; 227 | 228 | return extend(result, { 229 | language: "en", 230 | delimiter: ", ", 231 | spacer: " ", 232 | units: ["year", "month", "week", "day", "hour", "minute", "second"], 233 | languages: {}, 234 | halfUnit: true, 235 | round: false 236 | }, passedOptions); 237 | 238 | } 239 | 240 | // The main function is just a wrapper around a default humanizer. 241 | var defaultHumanizer = humanizer({}); 242 | function humanizeDuration() { 243 | return defaultHumanizer.apply(defaultHumanizer, arguments); 244 | } 245 | 246 | // doHumanization does the bulk of the work. 247 | function doHumanization(ms, options) { 248 | 249 | // Make sure we have a positive number. 250 | // Has the nice sideffect of turning Number objects into primitives. 251 | ms = Math.abs(ms); 252 | 253 | if (ms === 0) { 254 | return "0"; 255 | } 256 | 257 | var dictionary = options.languages[options.language] || languages[options.language]; 258 | if (!dictionary) { 259 | throw new Error("No language " + dictionary + "."); 260 | } 261 | 262 | var result = []; 263 | 264 | // Start at the top and keep removing units, bit by bit. 265 | var unitName, unitMS, unitCount, mightBeHalfUnit; 266 | for (var i = 0, len = options.units.length; i < len; i ++) { 267 | 268 | unitName = options.units[i]; 269 | if (unitName[unitName.length - 1] === "s") { // strip plurals 270 | unitName = unitName.substring(0, unitName.length - 1); 271 | } 272 | unitMS = UNITS[unitName]; 273 | 274 | // If it's a half-unit interval, we're done. 275 | if (result.length === 0 && options.halfUnit) { 276 | mightBeHalfUnit = (ms / unitMS) * 2; 277 | if (mightBeHalfUnit === Math.floor(mightBeHalfUnit)) { 278 | return render(mightBeHalfUnit / 2, unitName, dictionary, options.spacer); 279 | } 280 | } 281 | 282 | // What's the number of full units we can fit? 283 | if ((i + 1) === len) { 284 | unitCount = ms / unitMS; 285 | if (options.round) { 286 | unitCount = Math.round(unitCount); 287 | } 288 | } else { 289 | unitCount = Math.floor(ms / unitMS); 290 | } 291 | 292 | // Add the string. 293 | if (unitCount) { 294 | result.push(render(unitCount, unitName, dictionary, options.spacer)); 295 | } 296 | 297 | // Remove what we just figured out. 298 | ms -= unitCount * unitMS; 299 | 300 | } 301 | 302 | return result.join(options.delimiter); 303 | 304 | } 305 | 306 | function render(count, type, dictionary, spacer) { 307 | var dictionaryValue = dictionary[type]; 308 | var word; 309 | if (typeof dictionaryValue === "function") { 310 | word = dictionaryValue(count); 311 | } else { 312 | word = dictionaryValue; 313 | } 314 | return count + spacer + word; 315 | } 316 | 317 | function extend(destination) { 318 | var source; 319 | for (var i = 1; i < arguments.length; i ++) { 320 | source = arguments[i]; 321 | for (var prop in source) { 322 | if (source.hasOwnProperty(prop)) { 323 | destination[prop] = source[prop]; 324 | } 325 | } 326 | } 327 | return destination; 328 | } 329 | 330 | // Internal helper function for Polish language. 331 | function getPolishForm(c) { 332 | if (c === 1) { 333 | return 0; 334 | } else if (Math.floor(c) !== c) { 335 | return 1; 336 | } else if (2 <= c % 10 && c % 10 <= 4 && !(10 < c % 100 && c % 100 < 20)) { 337 | return 2; 338 | } else { 339 | return 3; 340 | } 341 | } 342 | 343 | // Internal helper function for Russian language. 344 | function getRussianForm(c) { 345 | if (Math.floor(c) !== c) { 346 | return 2; 347 | } else if (c === 0 || (c >= 5 && c <= 20) || (c % 10 >= 5 && c % 10 <= 9) || (c % 10 === 0)) { 348 | return 0; 349 | } else if (c === 1 || c % 10 === 1) { 350 | return 1; 351 | } else if (c > 1) { 352 | return 2; 353 | } else { 354 | return 0; 355 | } 356 | } 357 | 358 | function getSupportedLanguages() { 359 | var result = []; 360 | for (var language in languages) { 361 | if (languages.hasOwnProperty(language)) { 362 | result.push(language); 363 | } 364 | } 365 | return result; 366 | } 367 | 368 | humanizeDuration.humanizer = humanizer; 369 | humanizeDuration.getSupportedLanguages = getSupportedLanguages; 370 | 371 | if (typeof define === "function" && define.amd) { 372 | define(function() { 373 | return humanizeDuration; 374 | }); 375 | } else if (typeof module !== "undefined" && module.exports) { 376 | module.exports = humanizeDuration; 377 | } else { 378 | this.humanizeDuration = humanizeDuration; 379 | } 380 | 381 | })(); 382 | -------------------------------------------------------------------------------- /bandwidth/index-reloaded.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Copy Data 4 | 5 | 12 | 13 | 82 | 83 | 84 | 85 |
86 | 87 | 88 | 89 | 90 | 347 | 348 | 349 | 354 | 355 | 356 | 357 | 358 | 359 | 364 | 365 | 366 | 367 | 368 | 369 | 374 | 375 | 376 | 377 | 378 | 379 | 380 | 381 | 382 | 383 | 384 | 385 | 386 | 387 | 388 | 389 | 390 | 395 | 396 | 397 | 402 | 403 | 404 | 405 | 406 | 407 | 408 | 409 | 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 |
350 | Copy Window
351 | 0
352 | hour
353 |
+
360 | Data Size
361 | 0
362 | TB
363 |
+
370 | WAN
371 | 0
372 | MBit/s
373 |
+
-
-
-
391 | Data Reduction
392 | 0
393 | x Times
394 |
+
398 | Change Rate
399 | 0
400 | %
401 |
+
-
-
418 | 419 |
420 | 421 | -------------------------------------------------------------------------------- /bandwidth/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Copy Data 4 | 5 | 12 | 13 | 72 | 73 | 74 | 75 |
76 | 86 | 87 | 88 | 89 | 90 | 294 | 295 | 296 | 301 | 302 | 303 | 304 | 305 | 306 | 311 | 312 | 313 | 314 | 315 | 316 | 321 | 322 | 323 | 324 | 325 | 326 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 338 | 339 | 340 | 345 | 346 | 347 | 348 | 349 | 350 | 351 | 352 | 353 | 354 | 355 | 356 | 357 | 358 |
297 | Copy Window
298 | 0
299 | hour
300 |
+
307 | Data Size
308 | 0
309 | TB
310 |
+
317 | WAN
318 | 0
319 | MBit/s
320 |
-
-
334 | Data Reduction
335 | 0
336 | x Times
337 |
+
341 | Change Rate
342 | 0
343 | %
344 |
+
-
-
359 | 360 |
361 | 362 | -------------------------------------------------------------------------------- /filesize-mod.js: -------------------------------------------------------------------------------- 1 | /** 2 | * filesize 3 | * 4 | * @author Jason Mulligan 5 | * @copyright 2015 Jason Mulligan 6 | * @license BSD-3 7 | * @link http://filesizejs.com 8 | * @module filesize 9 | * @version 3.0.0 10 | */ 11 | ( function ( global ) { 12 | "use strict"; 13 | 14 | var bit = /b$/; 15 | 16 | /** 17 | * filesize 18 | * 19 | * @method filesize 20 | * @param {Mixed} arg String, Int or Float to transform 21 | * @param {Object} descriptor [Optional] Flags 22 | * @return {String} Readable file size String 23 | */ 24 | function filesize ( arg, descriptor ) { 25 | var result = [], 26 | skip = false, 27 | val = 0, 28 | e, base, bits, ceil, neg, num,forcesuffix, output, round, unix, spacer, suffixes; 29 | 30 | if ( isNaN( arg ) ) { 31 | throw new Error( "Invalid arguments" ); 32 | } 33 | 34 | descriptor = descriptor || {}; 35 | bits = ( descriptor.bits === true ); 36 | unix = ( descriptor.unix === true ); 37 | base = descriptor.base !== undefined ? descriptor.base : 2; 38 | round = descriptor.round !== undefined ? descriptor.round : unix ? 1 : 2; 39 | spacer = descriptor.spacer !== undefined ? descriptor.spacer : unix ? "" : " "; 40 | suffixes = descriptor.suffixes !== undefined ? descriptor.suffixes : {}; 41 | output = descriptor.output !== undefined ? descriptor.output : "string"; 42 | forcesuffix = descriptor.forcesuffix !== undefined ? Number(descriptor.forcesuffix) : false; 43 | num = Number( arg ); 44 | neg = ( num < 0 ); 45 | ceil = base > 2 ? 1000 : 1024; 46 | 47 | // Flipping a negative number to determine the size 48 | if ( neg ) { 49 | num = -num; 50 | } 51 | 52 | // Zero is now a special case because bytes divide by 1 53 | if ( num === 0 ) { 54 | result[ 0 ] = 0; 55 | 56 | if ( unix ) { 57 | result[ 1 ] = ""; 58 | } 59 | else { 60 | result[ 1 ] = "B"; 61 | } 62 | } 63 | else { 64 | e = Math.floor( Math.log( num ) / Math.log( 1000 ) ); 65 | 66 | // Exceeding supported length, time to reduce & multiply 67 | if(!isNaN(forcesuffix) && forcesuffix > 0 && forcesuffix <= 8) 68 | { 69 | e=forcesuffix 70 | } 71 | else if ( e > 8 ) { 72 | val = val * ( 1000 * ( e - 8 ) ); 73 | e = 8; 74 | } 75 | 76 | 77 | if ( base === 2 ) { 78 | val = num / Math.pow( 2, ( e * 10 ) ); 79 | } 80 | else { 81 | val = num / Math.pow( 1000, e ); 82 | } 83 | 84 | if ( bits ) { 85 | val = ( val * 8 ); 86 | 87 | if ( val > ceil ) { 88 | val = val / ceil; 89 | e++; 90 | } 91 | } 92 | 93 | result[ 0 ] = Number( val.toFixed( e > 0 ? round : 0 ) ); 94 | result[ 1 ] = si[ bits ? "bits" : "bytes" ][ e ]; 95 | 96 | if ( !skip && unix ) { 97 | if ( bits && bit.test( result[ 1 ] ) ) { 98 | result[ 1 ] = result[ 1 ].toLowerCase(); 99 | } 100 | 101 | result[ 1 ] = result[ 1 ].charAt( 0 ); 102 | 103 | if ( result[ 1 ] === "B" ) { 104 | result[ 0 ] = Math.floor( result[ 0 ] ); 105 | result[ 1 ] = ""; 106 | } 107 | else if ( !bits && result[ 1 ] === "k" ) { 108 | result[ 1 ] = "K"; 109 | } 110 | } 111 | } 112 | 113 | // Decorating a 'diff' 114 | if ( neg ) { 115 | result[ 0 ] = -result[ 0 ]; 116 | } 117 | 118 | // Applying custom suffix 119 | result[ 1 ] = suffixes[ result[ 1 ] ] || result[ 1 ]; 120 | 121 | // Returning Array, Object, or String (default) 122 | if ( output === "array" ) { 123 | return result; 124 | } 125 | else if ( output === "object" ) { 126 | return { value: result[ 0 ], suffix: result[ 1 ] }; 127 | } 128 | else if (output == "e") { 129 | return e 130 | } 131 | else { 132 | return result.join( spacer ); 133 | } 134 | } 135 | 136 | /** 137 | * SI suffixes 138 | * 139 | * @type {Object} 140 | */ 141 | var si = { 142 | bits: [ "B", "kb", "Mb", "Gb", "Tb", "Pb", "Eb", "Zb", "Yb" ], 143 | bytes: [ "B", "kB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB" ] 144 | }; 145 | 146 | // CommonJS, AMD, script tag 147 | if ( typeof exports !== "undefined" ) { 148 | module.exports = filesize; 149 | } 150 | else if ( typeof define === "function" ) { 151 | define( function () { 152 | return filesize; 153 | } ); 154 | } 155 | else { 156 | global.filesize = filesize; 157 | } 158 | } )( this ); 159 | -------------------------------------------------------------------------------- /filesize.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | 2014 Jason Mulligan 3 | @license BSD-3 4 | @link http://filesizejs.com 5 | @module filesize 6 | @version 2.0.4 7 | */ 8 | (function(p){function g(g,c){var b="",d=0,a,h,m,f,n,e,k,l;if(isNaN(g))throw Error("Invalid arguments");c=c||{};h=!0===c.bits;e=!0===c.unix;d=void 0!==c.base?c.base:e?2:10;n=void 0!==c.round?c.round:e?1:2;k=void 0!==c.spacer?c.spacer:e?"":" ";l=void 0!==c.suffixes?c.suffixes:{};f=Number(g);m=0>f;b=2b&&(d/=b,a++)),b=d.toFixed(0 2 | 3 | Restore Point Simulator 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 |
18 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /help.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/help.pdf -------------------------------------------------------------------------------- /images/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/images/Thumbs.db -------------------------------------------------------------------------------- /images/ui-bg_diagonals-thick_18_b81900_40x40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/images/ui-bg_diagonals-thick_18_b81900_40x40.png -------------------------------------------------------------------------------- /images/ui-bg_diagonals-thick_20_666666_40x40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/images/ui-bg_diagonals-thick_20_666666_40x40.png -------------------------------------------------------------------------------- /images/ui-bg_flat_10_000000_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/images/ui-bg_flat_10_000000_40x100.png -------------------------------------------------------------------------------- /images/ui-bg_highlight-soft_75_ffe45c_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/images/ui-bg_highlight-soft_75_ffe45c_1x100.png -------------------------------------------------------------------------------- /images/ui-icons_222222_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/images/ui-icons_222222_256x240.png -------------------------------------------------------------------------------- /images/ui-icons_228ef1_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/images/ui-icons_228ef1_256x240.png -------------------------------------------------------------------------------- /images/ui-icons_ef8c08_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/images/ui-icons_ef8c08_256x240.png -------------------------------------------------------------------------------- /images/ui-icons_ffd27a_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/images/ui-icons_ffd27a_256x240.png -------------------------------------------------------------------------------- /images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /jquery-mini.js: -------------------------------------------------------------------------------- 1 | $ = { 2 | inArray: function( elem, arr, i ) { 3 | return arr == null ? -1 : arr.indexOf(elem, i ); 4 | }, 5 | 6 | each: function( obj, callback, args ) { 7 | var value, 8 | i = 0, 9 | length = obj.length; 10 | 11 | for ( ; i < length; i++ ) { 12 | value = callback.call( obj[ i ], i, obj[ i ] ); 13 | 14 | if ( value === false ) { 15 | break; 16 | } 17 | } 18 | 19 | 20 | return obj; 21 | }, 22 | unique: function(array) { 23 | var newArray = [] 24 | var value; 25 | 26 | for (var i=0 ; i < array.length; i++ ) { 27 | value = array[i] 28 | var duplicate = false 29 | for(var o=0; o < newArray.length && !duplicate;o++) 30 | { 31 | if(newArray[o] == value) { duplicate = true } 32 | } 33 | if(!duplicate) 34 | { 35 | newArray.push(value) 36 | } 37 | } 38 | return newArray 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /jquery-ui.css: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.11.2 - 2015-01-12 2 | * http://jqueryui.com 3 | * Includes: core.css, draggable.css, resizable.css, selectable.css, button.css, dialog.css, tooltip.css, theme.css 4 | * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS%2CTahoma%2CVerdana%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=gloss_wave&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=highlight_soft&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=glass&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=glass&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=diagonals_thick&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=diagonals_thick&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=flat&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px 5 | * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */ 6 | 7 | /* Layout helpers 8 | ----------------------------------*/ 9 | .ui-helper-hidden { 10 | display: none; 11 | } 12 | .ui-helper-hidden-accessible { 13 | border: 0; 14 | clip: rect(0 0 0 0); 15 | height: 1px; 16 | margin: -1px; 17 | overflow: hidden; 18 | padding: 0; 19 | position: absolute; 20 | width: 1px; 21 | } 22 | .ui-helper-reset { 23 | margin: 0; 24 | padding: 0; 25 | border: 0; 26 | outline: 0; 27 | line-height: 1.3; 28 | text-decoration: none; 29 | font-size: 100%; 30 | list-style: none; 31 | } 32 | .ui-helper-clearfix:before, 33 | .ui-helper-clearfix:after { 34 | content: ""; 35 | display: table; 36 | border-collapse: collapse; 37 | } 38 | .ui-helper-clearfix:after { 39 | clear: both; 40 | } 41 | .ui-helper-clearfix { 42 | min-height: 0; /* support: IE7 */ 43 | } 44 | .ui-helper-zfix { 45 | width: 100%; 46 | height: 100%; 47 | top: 0; 48 | left: 0; 49 | position: absolute; 50 | opacity: 0; 51 | filter:Alpha(Opacity=0); /* support: IE8 */ 52 | } 53 | 54 | .ui-front { 55 | z-index: 100; 56 | } 57 | 58 | 59 | /* Interaction Cues 60 | ----------------------------------*/ 61 | .ui-state-disabled { 62 | cursor: default !important; 63 | } 64 | 65 | 66 | /* Icons 67 | ----------------------------------*/ 68 | 69 | /* states and images */ 70 | .ui-icon { 71 | display: block; 72 | text-indent: -99999px; 73 | overflow: hidden; 74 | background-repeat: no-repeat; 75 | } 76 | 77 | 78 | /* Misc visuals 79 | ----------------------------------*/ 80 | 81 | /* Overlays */ 82 | .ui-widget-overlay { 83 | position: fixed; 84 | top: 0; 85 | left: 0; 86 | width: 100%; 87 | height: 100%; 88 | } 89 | .ui-draggable-handle { 90 | -ms-touch-action: none; 91 | touch-action: none; 92 | } 93 | .ui-resizable { 94 | position: relative; 95 | } 96 | .ui-resizable-handle { 97 | position: absolute; 98 | font-size: 0.1px; 99 | display: block; 100 | -ms-touch-action: none; 101 | touch-action: none; 102 | } 103 | .ui-resizable-disabled .ui-resizable-handle, 104 | .ui-resizable-autohide .ui-resizable-handle { 105 | display: none; 106 | } 107 | .ui-resizable-n { 108 | cursor: n-resize; 109 | height: 7px; 110 | width: 100%; 111 | top: -5px; 112 | left: 0; 113 | } 114 | .ui-resizable-s { 115 | cursor: s-resize; 116 | height: 7px; 117 | width: 100%; 118 | bottom: -5px; 119 | left: 0; 120 | } 121 | .ui-resizable-e { 122 | cursor: e-resize; 123 | width: 7px; 124 | right: -5px; 125 | top: 0; 126 | height: 100%; 127 | } 128 | .ui-resizable-w { 129 | cursor: w-resize; 130 | width: 7px; 131 | left: -5px; 132 | top: 0; 133 | height: 100%; 134 | } 135 | .ui-resizable-se { 136 | cursor: se-resize; 137 | width: 12px; 138 | height: 12px; 139 | right: 1px; 140 | bottom: 1px; 141 | } 142 | .ui-resizable-sw { 143 | cursor: sw-resize; 144 | width: 9px; 145 | height: 9px; 146 | left: -5px; 147 | bottom: -5px; 148 | } 149 | .ui-resizable-nw { 150 | cursor: nw-resize; 151 | width: 9px; 152 | height: 9px; 153 | left: -5px; 154 | top: -5px; 155 | } 156 | .ui-resizable-ne { 157 | cursor: ne-resize; 158 | width: 9px; 159 | height: 9px; 160 | right: -5px; 161 | top: -5px; 162 | } 163 | .ui-selectable { 164 | -ms-touch-action: none; 165 | touch-action: none; 166 | } 167 | .ui-selectable-helper { 168 | position: absolute; 169 | z-index: 100; 170 | border: 1px dotted black; 171 | } 172 | .ui-button { 173 | display: inline-block; 174 | position: relative; 175 | padding: 0; 176 | line-height: normal; 177 | margin-right: .1em; 178 | cursor: pointer; 179 | vertical-align: middle; 180 | text-align: center; 181 | overflow: visible; /* removes extra width in IE */ 182 | } 183 | .ui-button, 184 | .ui-button:link, 185 | .ui-button:visited, 186 | .ui-button:hover, 187 | .ui-button:active { 188 | text-decoration: none; 189 | } 190 | /* to make room for the icon, a width needs to be set here */ 191 | .ui-button-icon-only { 192 | width: 2.2em; 193 | } 194 | /* button elements seem to need a little more width */ 195 | button.ui-button-icon-only { 196 | width: 2.4em; 197 | } 198 | .ui-button-icons-only { 199 | width: 3.4em; 200 | } 201 | button.ui-button-icons-only { 202 | width: 3.7em; 203 | } 204 | 205 | /* button text element */ 206 | .ui-button .ui-button-text { 207 | display: block; 208 | line-height: normal; 209 | } 210 | .ui-button-text-only .ui-button-text { 211 | padding: .4em 1em; 212 | } 213 | .ui-button-icon-only .ui-button-text, 214 | .ui-button-icons-only .ui-button-text { 215 | padding: .4em; 216 | text-indent: -9999999px; 217 | } 218 | .ui-button-text-icon-primary .ui-button-text, 219 | .ui-button-text-icons .ui-button-text { 220 | padding: .4em 1em .4em 2.1em; 221 | } 222 | .ui-button-text-icon-secondary .ui-button-text, 223 | .ui-button-text-icons .ui-button-text { 224 | padding: .4em 2.1em .4em 1em; 225 | } 226 | .ui-button-text-icons .ui-button-text { 227 | padding-left: 2.1em; 228 | padding-right: 2.1em; 229 | } 230 | /* no icon support for input elements, provide padding by default */ 231 | input.ui-button { 232 | padding: .4em 1em; 233 | } 234 | 235 | /* button icon element(s) */ 236 | .ui-button-icon-only .ui-icon, 237 | .ui-button-text-icon-primary .ui-icon, 238 | .ui-button-text-icon-secondary .ui-icon, 239 | .ui-button-text-icons .ui-icon, 240 | .ui-button-icons-only .ui-icon { 241 | position: absolute; 242 | top: 50%; 243 | margin-top: -8px; 244 | } 245 | .ui-button-icon-only .ui-icon { 246 | left: 50%; 247 | margin-left: -8px; 248 | } 249 | .ui-button-text-icon-primary .ui-button-icon-primary, 250 | .ui-button-text-icons .ui-button-icon-primary, 251 | .ui-button-icons-only .ui-button-icon-primary { 252 | left: .5em; 253 | } 254 | .ui-button-text-icon-secondary .ui-button-icon-secondary, 255 | .ui-button-text-icons .ui-button-icon-secondary, 256 | .ui-button-icons-only .ui-button-icon-secondary { 257 | right: .5em; 258 | } 259 | 260 | /* button sets */ 261 | .ui-buttonset { 262 | margin-right: 7px; 263 | } 264 | .ui-buttonset .ui-button { 265 | margin-left: 0; 266 | margin-right: -.3em; 267 | } 268 | 269 | /* workarounds */ 270 | /* reset extra padding in Firefox, see h5bp.com/l */ 271 | input.ui-button::-moz-focus-inner, 272 | button.ui-button::-moz-focus-inner { 273 | border: 0; 274 | padding: 0; 275 | } 276 | .ui-dialog { 277 | overflow: hidden; 278 | position: absolute; 279 | top: 0; 280 | left: 0; 281 | padding: .2em; 282 | outline: 0; 283 | } 284 | .ui-dialog .ui-dialog-titlebar { 285 | padding: .4em 1em; 286 | position: relative; 287 | } 288 | .ui-dialog .ui-dialog-title { 289 | float: left; 290 | margin: .1em 0; 291 | white-space: nowrap; 292 | width: 90%; 293 | overflow: hidden; 294 | text-overflow: ellipsis; 295 | } 296 | .ui-dialog .ui-dialog-titlebar-close { 297 | position: absolute; 298 | right: .3em; 299 | top: 50%; 300 | width: 20px; 301 | margin: -10px 0 0 0; 302 | padding: 1px; 303 | height: 20px; 304 | } 305 | .ui-dialog .ui-dialog-content { 306 | position: relative; 307 | border: 0; 308 | padding: .5em 1em; 309 | background: none; 310 | overflow: auto; 311 | } 312 | .ui-dialog .ui-dialog-buttonpane { 313 | text-align: left; 314 | border-width: 1px 0 0 0; 315 | background-image: none; 316 | margin-top: .5em; 317 | padding: .3em 1em .5em .4em; 318 | } 319 | .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { 320 | float: right; 321 | } 322 | .ui-dialog .ui-dialog-buttonpane button { 323 | margin: .5em .4em .5em 0; 324 | cursor: pointer; 325 | } 326 | .ui-dialog .ui-resizable-se { 327 | width: 12px; 328 | height: 12px; 329 | right: -5px; 330 | bottom: -5px; 331 | background-position: 16px 16px; 332 | } 333 | .ui-draggable .ui-dialog-titlebar { 334 | cursor: move; 335 | } 336 | .ui-tooltip { 337 | padding: 8px; 338 | position: absolute; 339 | z-index: 9999; 340 | max-width: 300px; 341 | -webkit-box-shadow: 0 0 5px #aaa; 342 | box-shadow: 0 0 5px #aaa; 343 | } 344 | body .ui-tooltip { 345 | border-width: 2px; 346 | } 347 | 348 | /* Component containers 349 | ----------------------------------*/ 350 | .ui-widget { 351 | font-family: Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; 352 | font-size: 1.1em; 353 | } 354 | .ui-widget .ui-widget { 355 | font-size: 1em; 356 | } 357 | .ui-widget input, 358 | .ui-widget select, 359 | .ui-widget textarea, 360 | .ui-widget button { 361 | font-family: Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; 362 | font-size: 1em; 363 | } 364 | .ui-widget-content { 365 | border: 1px solid #dddddd; 366 | background: #eeeeee url("images/ui-bg_highlight-soft_100_eeeeee_1x100.png") 50% top repeat-x; 367 | color: #333333; 368 | } 369 | .ui-widget-content a { 370 | color: #333333; 371 | } 372 | .ui-widget-header { 373 | border: 1px solid #e78f08; 374 | background: #f6a828 url("images/ui-bg_gloss-wave_35_f6a828_500x100.png") 50% 50% repeat-x; 375 | color: #ffffff; 376 | font-weight: bold; 377 | } 378 | .ui-widget-header a { 379 | color: #ffffff; 380 | } 381 | 382 | /* Interaction states 383 | ----------------------------------*/ 384 | .ui-state-default, 385 | .ui-widget-content .ui-state-default, 386 | .ui-widget-header .ui-state-default { 387 | border: 1px solid #cccccc; 388 | background: #f6f6f6 url("images/ui-bg_glass_100_f6f6f6_1x400.png") 50% 50% repeat-x; 389 | font-weight: bold; 390 | color: #1c94c4; 391 | } 392 | .ui-state-default a, 393 | .ui-state-default a:link, 394 | .ui-state-default a:visited { 395 | color: #1c94c4; 396 | text-decoration: none; 397 | } 398 | .ui-state-hover, 399 | .ui-widget-content .ui-state-hover, 400 | .ui-widget-header .ui-state-hover, 401 | .ui-state-focus, 402 | .ui-widget-content .ui-state-focus, 403 | .ui-widget-header .ui-state-focus { 404 | border: 1px solid #fbcb09; 405 | background: #fdf5ce url("images/ui-bg_glass_100_fdf5ce_1x400.png") 50% 50% repeat-x; 406 | font-weight: bold; 407 | color: #c77405; 408 | } 409 | .ui-state-hover a, 410 | .ui-state-hover a:hover, 411 | .ui-state-hover a:link, 412 | .ui-state-hover a:visited, 413 | .ui-state-focus a, 414 | .ui-state-focus a:hover, 415 | .ui-state-focus a:link, 416 | .ui-state-focus a:visited { 417 | color: #c77405; 418 | text-decoration: none; 419 | } 420 | .ui-state-active, 421 | .ui-widget-content .ui-state-active, 422 | .ui-widget-header .ui-state-active { 423 | border: 1px solid #fbd850; 424 | background: #ffffff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x; 425 | font-weight: bold; 426 | color: #eb8f00; 427 | } 428 | .ui-state-active a, 429 | .ui-state-active a:link, 430 | .ui-state-active a:visited { 431 | color: #eb8f00; 432 | text-decoration: none; 433 | } 434 | 435 | /* Interaction Cues 436 | ----------------------------------*/ 437 | .ui-state-highlight, 438 | .ui-widget-content .ui-state-highlight, 439 | .ui-widget-header .ui-state-highlight { 440 | border: 1px solid #fed22f; 441 | background: #ffe45c url("images/ui-bg_highlight-soft_75_ffe45c_1x100.png") 50% top repeat-x; 442 | color: #363636; 443 | } 444 | .ui-state-highlight a, 445 | .ui-widget-content .ui-state-highlight a, 446 | .ui-widget-header .ui-state-highlight a { 447 | color: #363636; 448 | } 449 | .ui-state-error, 450 | .ui-widget-content .ui-state-error, 451 | .ui-widget-header .ui-state-error { 452 | border: 1px solid #cd0a0a; 453 | background: #b81900 url("images/ui-bg_diagonals-thick_18_b81900_40x40.png") 50% 50% repeat; 454 | color: #ffffff; 455 | } 456 | .ui-state-error a, 457 | .ui-widget-content .ui-state-error a, 458 | .ui-widget-header .ui-state-error a { 459 | color: #ffffff; 460 | } 461 | .ui-state-error-text, 462 | .ui-widget-content .ui-state-error-text, 463 | .ui-widget-header .ui-state-error-text { 464 | color: #ffffff; 465 | } 466 | .ui-priority-primary, 467 | .ui-widget-content .ui-priority-primary, 468 | .ui-widget-header .ui-priority-primary { 469 | font-weight: bold; 470 | } 471 | .ui-priority-secondary, 472 | .ui-widget-content .ui-priority-secondary, 473 | .ui-widget-header .ui-priority-secondary { 474 | opacity: .7; 475 | filter:Alpha(Opacity=70); /* support: IE8 */ 476 | font-weight: normal; 477 | } 478 | .ui-state-disabled, 479 | .ui-widget-content .ui-state-disabled, 480 | .ui-widget-header .ui-state-disabled { 481 | opacity: .35; 482 | filter:Alpha(Opacity=35); /* support: IE8 */ 483 | background-image: none; 484 | } 485 | .ui-state-disabled .ui-icon { 486 | filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */ 487 | } 488 | 489 | /* Icons 490 | ----------------------------------*/ 491 | 492 | /* states and images */ 493 | .ui-icon { 494 | width: 16px; 495 | height: 16px; 496 | } 497 | .ui-icon, 498 | .ui-widget-content .ui-icon { 499 | background-image: url("images/ui-icons_222222_256x240.png"); 500 | } 501 | .ui-widget-header .ui-icon { 502 | background-image: url("images/ui-icons_ffffff_256x240.png"); 503 | } 504 | .ui-state-default .ui-icon { 505 | background-image: url("images/ui-icons_ef8c08_256x240.png"); 506 | } 507 | .ui-state-hover .ui-icon, 508 | .ui-state-focus .ui-icon { 509 | background-image: url("images/ui-icons_ef8c08_256x240.png"); 510 | } 511 | .ui-state-active .ui-icon { 512 | background-image: url("images/ui-icons_ef8c08_256x240.png"); 513 | } 514 | .ui-state-highlight .ui-icon { 515 | background-image: url("images/ui-icons_228ef1_256x240.png"); 516 | } 517 | .ui-state-error .ui-icon, 518 | .ui-state-error-text .ui-icon { 519 | background-image: url("images/ui-icons_ffd27a_256x240.png"); 520 | } 521 | 522 | /* positioning */ 523 | .ui-icon-blank { background-position: 16px 16px; } 524 | .ui-icon-carat-1-n { background-position: 0 0; } 525 | .ui-icon-carat-1-ne { background-position: -16px 0; } 526 | .ui-icon-carat-1-e { background-position: -32px 0; } 527 | .ui-icon-carat-1-se { background-position: -48px 0; } 528 | .ui-icon-carat-1-s { background-position: -64px 0; } 529 | .ui-icon-carat-1-sw { background-position: -80px 0; } 530 | .ui-icon-carat-1-w { background-position: -96px 0; } 531 | .ui-icon-carat-1-nw { background-position: -112px 0; } 532 | .ui-icon-carat-2-n-s { background-position: -128px 0; } 533 | .ui-icon-carat-2-e-w { background-position: -144px 0; } 534 | .ui-icon-triangle-1-n { background-position: 0 -16px; } 535 | .ui-icon-triangle-1-ne { background-position: -16px -16px; } 536 | .ui-icon-triangle-1-e { background-position: -32px -16px; } 537 | .ui-icon-triangle-1-se { background-position: -48px -16px; } 538 | .ui-icon-triangle-1-s { background-position: -64px -16px; } 539 | .ui-icon-triangle-1-sw { background-position: -80px -16px; } 540 | .ui-icon-triangle-1-w { background-position: -96px -16px; } 541 | .ui-icon-triangle-1-nw { background-position: -112px -16px; } 542 | .ui-icon-triangle-2-n-s { background-position: -128px -16px; } 543 | .ui-icon-triangle-2-e-w { background-position: -144px -16px; } 544 | .ui-icon-arrow-1-n { background-position: 0 -32px; } 545 | .ui-icon-arrow-1-ne { background-position: -16px -32px; } 546 | .ui-icon-arrow-1-e { background-position: -32px -32px; } 547 | .ui-icon-arrow-1-se { background-position: -48px -32px; } 548 | .ui-icon-arrow-1-s { background-position: -64px -32px; } 549 | .ui-icon-arrow-1-sw { background-position: -80px -32px; } 550 | .ui-icon-arrow-1-w { background-position: -96px -32px; } 551 | .ui-icon-arrow-1-nw { background-position: -112px -32px; } 552 | .ui-icon-arrow-2-n-s { background-position: -128px -32px; } 553 | .ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } 554 | .ui-icon-arrow-2-e-w { background-position: -160px -32px; } 555 | .ui-icon-arrow-2-se-nw { background-position: -176px -32px; } 556 | .ui-icon-arrowstop-1-n { background-position: -192px -32px; } 557 | .ui-icon-arrowstop-1-e { background-position: -208px -32px; } 558 | .ui-icon-arrowstop-1-s { background-position: -224px -32px; } 559 | .ui-icon-arrowstop-1-w { background-position: -240px -32px; } 560 | .ui-icon-arrowthick-1-n { background-position: 0 -48px; } 561 | .ui-icon-arrowthick-1-ne { background-position: -16px -48px; } 562 | .ui-icon-arrowthick-1-e { background-position: -32px -48px; } 563 | .ui-icon-arrowthick-1-se { background-position: -48px -48px; } 564 | .ui-icon-arrowthick-1-s { background-position: -64px -48px; } 565 | .ui-icon-arrowthick-1-sw { background-position: -80px -48px; } 566 | .ui-icon-arrowthick-1-w { background-position: -96px -48px; } 567 | .ui-icon-arrowthick-1-nw { background-position: -112px -48px; } 568 | .ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } 569 | .ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } 570 | .ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } 571 | .ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } 572 | .ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } 573 | .ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } 574 | .ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } 575 | .ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } 576 | .ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } 577 | .ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } 578 | .ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } 579 | .ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } 580 | .ui-icon-arrowreturn-1-w { background-position: -64px -64px; } 581 | .ui-icon-arrowreturn-1-n { background-position: -80px -64px; } 582 | .ui-icon-arrowreturn-1-e { background-position: -96px -64px; } 583 | .ui-icon-arrowreturn-1-s { background-position: -112px -64px; } 584 | .ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } 585 | .ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } 586 | .ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } 587 | .ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } 588 | .ui-icon-arrow-4 { background-position: 0 -80px; } 589 | .ui-icon-arrow-4-diag { background-position: -16px -80px; } 590 | .ui-icon-extlink { background-position: -32px -80px; } 591 | .ui-icon-newwin { background-position: -48px -80px; } 592 | .ui-icon-refresh { background-position: -64px -80px; } 593 | .ui-icon-shuffle { background-position: -80px -80px; } 594 | .ui-icon-transfer-e-w { background-position: -96px -80px; } 595 | .ui-icon-transferthick-e-w { background-position: -112px -80px; } 596 | .ui-icon-folder-collapsed { background-position: 0 -96px; } 597 | .ui-icon-folder-open { background-position: -16px -96px; } 598 | .ui-icon-document { background-position: -32px -96px; } 599 | .ui-icon-document-b { background-position: -48px -96px; } 600 | .ui-icon-note { background-position: -64px -96px; } 601 | .ui-icon-mail-closed { background-position: -80px -96px; } 602 | .ui-icon-mail-open { background-position: -96px -96px; } 603 | .ui-icon-suitcase { background-position: -112px -96px; } 604 | .ui-icon-comment { background-position: -128px -96px; } 605 | .ui-icon-person { background-position: -144px -96px; } 606 | .ui-icon-print { background-position: -160px -96px; } 607 | .ui-icon-trash { background-position: -176px -96px; } 608 | .ui-icon-locked { background-position: -192px -96px; } 609 | .ui-icon-unlocked { background-position: -208px -96px; } 610 | .ui-icon-bookmark { background-position: -224px -96px; } 611 | .ui-icon-tag { background-position: -240px -96px; } 612 | .ui-icon-home { background-position: 0 -112px; } 613 | .ui-icon-flag { background-position: -16px -112px; } 614 | .ui-icon-calendar { background-position: -32px -112px; } 615 | .ui-icon-cart { background-position: -48px -112px; } 616 | .ui-icon-pencil { background-position: -64px -112px; } 617 | .ui-icon-clock { background-position: -80px -112px; } 618 | .ui-icon-disk { background-position: -96px -112px; } 619 | .ui-icon-calculator { background-position: -112px -112px; } 620 | .ui-icon-zoomin { background-position: -128px -112px; } 621 | .ui-icon-zoomout { background-position: -144px -112px; } 622 | .ui-icon-search { background-position: -160px -112px; } 623 | .ui-icon-wrench { background-position: -176px -112px; } 624 | .ui-icon-gear { background-position: -192px -112px; } 625 | .ui-icon-heart { background-position: -208px -112px; } 626 | .ui-icon-star { background-position: -224px -112px; } 627 | .ui-icon-link { background-position: -240px -112px; } 628 | .ui-icon-cancel { background-position: 0 -128px; } 629 | .ui-icon-plus { background-position: -16px -128px; } 630 | .ui-icon-plusthick { background-position: -32px -128px; } 631 | .ui-icon-minus { background-position: -48px -128px; } 632 | .ui-icon-minusthick { background-position: -64px -128px; } 633 | .ui-icon-close { background-position: -80px -128px; } 634 | .ui-icon-closethick { background-position: -96px -128px; } 635 | .ui-icon-key { background-position: -112px -128px; } 636 | .ui-icon-lightbulb { background-position: -128px -128px; } 637 | .ui-icon-scissors { background-position: -144px -128px; } 638 | .ui-icon-clipboard { background-position: -160px -128px; } 639 | .ui-icon-copy { background-position: -176px -128px; } 640 | .ui-icon-contact { background-position: -192px -128px; } 641 | .ui-icon-image { background-position: -208px -128px; } 642 | .ui-icon-video { background-position: -224px -128px; } 643 | .ui-icon-script { background-position: -240px -128px; } 644 | .ui-icon-alert { background-position: 0 -144px; } 645 | .ui-icon-info { background-position: -16px -144px; } 646 | .ui-icon-notice { background-position: -32px -144px; } 647 | .ui-icon-help { background-position: -48px -144px; } 648 | .ui-icon-check { background-position: -64px -144px; } 649 | .ui-icon-bullet { background-position: -80px -144px; } 650 | .ui-icon-radio-on { background-position: -96px -144px; } 651 | .ui-icon-radio-off { background-position: -112px -144px; } 652 | .ui-icon-pin-w { background-position: -128px -144px; } 653 | .ui-icon-pin-s { background-position: -144px -144px; } 654 | .ui-icon-play { background-position: 0 -160px; } 655 | .ui-icon-pause { background-position: -16px -160px; } 656 | .ui-icon-seek-next { background-position: -32px -160px; } 657 | .ui-icon-seek-prev { background-position: -48px -160px; } 658 | .ui-icon-seek-end { background-position: -64px -160px; } 659 | .ui-icon-seek-start { background-position: -80px -160px; } 660 | /* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ 661 | .ui-icon-seek-first { background-position: -80px -160px; } 662 | .ui-icon-stop { background-position: -96px -160px; } 663 | .ui-icon-eject { background-position: -112px -160px; } 664 | .ui-icon-volume-off { background-position: -128px -160px; } 665 | .ui-icon-volume-on { background-position: -144px -160px; } 666 | .ui-icon-power { background-position: 0 -176px; } 667 | .ui-icon-signal-diag { background-position: -16px -176px; } 668 | .ui-icon-signal { background-position: -32px -176px; } 669 | .ui-icon-battery-0 { background-position: -48px -176px; } 670 | .ui-icon-battery-1 { background-position: -64px -176px; } 671 | .ui-icon-battery-2 { background-position: -80px -176px; } 672 | .ui-icon-battery-3 { background-position: -96px -176px; } 673 | .ui-icon-circle-plus { background-position: 0 -192px; } 674 | .ui-icon-circle-minus { background-position: -16px -192px; } 675 | .ui-icon-circle-close { background-position: -32px -192px; } 676 | .ui-icon-circle-triangle-e { background-position: -48px -192px; } 677 | .ui-icon-circle-triangle-s { background-position: -64px -192px; } 678 | .ui-icon-circle-triangle-w { background-position: -80px -192px; } 679 | .ui-icon-circle-triangle-n { background-position: -96px -192px; } 680 | .ui-icon-circle-arrow-e { background-position: -112px -192px; } 681 | .ui-icon-circle-arrow-s { background-position: -128px -192px; } 682 | .ui-icon-circle-arrow-w { background-position: -144px -192px; } 683 | .ui-icon-circle-arrow-n { background-position: -160px -192px; } 684 | .ui-icon-circle-zoomin { background-position: -176px -192px; } 685 | .ui-icon-circle-zoomout { background-position: -192px -192px; } 686 | .ui-icon-circle-check { background-position: -208px -192px; } 687 | .ui-icon-circlesmall-plus { background-position: 0 -208px; } 688 | .ui-icon-circlesmall-minus { background-position: -16px -208px; } 689 | .ui-icon-circlesmall-close { background-position: -32px -208px; } 690 | .ui-icon-squaresmall-plus { background-position: -48px -208px; } 691 | .ui-icon-squaresmall-minus { background-position: -64px -208px; } 692 | .ui-icon-squaresmall-close { background-position: -80px -208px; } 693 | .ui-icon-grip-dotted-vertical { background-position: 0 -224px; } 694 | .ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } 695 | .ui-icon-grip-solid-vertical { background-position: -32px -224px; } 696 | .ui-icon-grip-solid-horizontal { background-position: -48px -224px; } 697 | .ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } 698 | .ui-icon-grip-diagonal-se { background-position: -80px -224px; } 699 | 700 | 701 | /* Misc visuals 702 | ----------------------------------*/ 703 | 704 | /* Corner radius */ 705 | .ui-corner-all, 706 | .ui-corner-top, 707 | .ui-corner-left, 708 | .ui-corner-tl { 709 | border-top-left-radius: 4px; 710 | } 711 | .ui-corner-all, 712 | .ui-corner-top, 713 | .ui-corner-right, 714 | .ui-corner-tr { 715 | border-top-right-radius: 4px; 716 | } 717 | .ui-corner-all, 718 | .ui-corner-bottom, 719 | .ui-corner-left, 720 | .ui-corner-bl { 721 | border-bottom-left-radius: 4px; 722 | } 723 | .ui-corner-all, 724 | .ui-corner-bottom, 725 | .ui-corner-right, 726 | .ui-corner-br { 727 | border-bottom-right-radius: 4px; 728 | } 729 | 730 | /* Overlays */ 731 | .ui-widget-overlay { 732 | background: #666666 url("images/ui-bg_diagonals-thick_20_666666_40x40.png") 50% 50% repeat; 733 | opacity: .5; 734 | filter: Alpha(Opacity=50); /* support: IE8 */ 735 | } 736 | .ui-widget-shadow { 737 | margin: -5px 0 0 -5px; 738 | padding: 5px; 739 | background: #000000 url("images/ui-bg_flat_10_000000_40x100.png") 50% 50% repeat-x; 740 | opacity: .2; 741 | filter: Alpha(Opacity=20); /* support: IE8 */ 742 | border-radius: 5px; 743 | } 744 | -------------------------------------------------------------------------------- /jquery-ui.min.css: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.11.2 - 2015-01-12 2 | * http://jqueryui.com 3 | * Includes: core.css, draggable.css, resizable.css, selectable.css, button.css, dialog.css, tooltip.css, theme.css 4 | * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS%2CTahoma%2CVerdana%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=gloss_wave&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=highlight_soft&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=glass&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=glass&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=diagonals_thick&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=diagonals_thick&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=flat&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px 5 | * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */ 6 | 7 | .ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable{-ms-touch-action:none;touch-action:none}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-dialog{overflow:hidden;position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #ddd;background:#eee url("images/ui-bg_highlight-soft_100_eeeeee_1x100.png") 50% top repeat-x;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #e78f08;background:#f6a828 url("images/ui-bg_gloss-wave_35_f6a828_500x100.png") 50% 50% repeat-x;color:#fff;font-weight:bold}.ui-widget-header a{color:#fff}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #ccc;background:#f6f6f6 url("images/ui-bg_glass_100_f6f6f6_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#1c94c4}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#1c94c4;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #fbcb09;background:#fdf5ce url("images/ui-bg_glass_100_fdf5ce_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#c77405}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#c77405;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #fbd850;background:#fff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#eb8f00}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#eb8f00;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fed22f;background:#ffe45c url("images/ui-bg_highlight-soft_75_ffe45c_1x100.png") 50% top repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#b81900 url("images/ui-bg_diagonals-thick_18_b81900_40x40.png") 50% 50% repeat;color:#fff}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#fff}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#fff}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_228ef1_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_ffd27a_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#666 url("images/ui-bg_diagonals-thick_20_666666_40x40.png") 50% 50% repeat;opacity:.5;filter:Alpha(Opacity=50)}.ui-widget-shadow{margin:-5px 0 0 -5px;padding:5px;background:#000 url("images/ui-bg_flat_10_000000_40x100.png") 50% 50% repeat-x;opacity:.2;filter:Alpha(Opacity=20);border-radius:5px} -------------------------------------------------------------------------------- /jquery-ui.structure.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * jQuery UI CSS Framework 1.11.2 3 | * http://jqueryui.com 4 | * 5 | * Copyright 2014 jQuery Foundation and other contributors 6 | * Released under the MIT license. 7 | * http://jquery.org/license 8 | * 9 | * http://api.jqueryui.com/category/theming/ 10 | */ 11 | 12 | /* Layout helpers 13 | ----------------------------------*/ 14 | .ui-helper-hidden { 15 | display: none; 16 | } 17 | .ui-helper-hidden-accessible { 18 | border: 0; 19 | clip: rect(0 0 0 0); 20 | height: 1px; 21 | margin: -1px; 22 | overflow: hidden; 23 | padding: 0; 24 | position: absolute; 25 | width: 1px; 26 | } 27 | .ui-helper-reset { 28 | margin: 0; 29 | padding: 0; 30 | border: 0; 31 | outline: 0; 32 | line-height: 1.3; 33 | text-decoration: none; 34 | font-size: 100%; 35 | list-style: none; 36 | } 37 | .ui-helper-clearfix:before, 38 | .ui-helper-clearfix:after { 39 | content: ""; 40 | display: table; 41 | border-collapse: collapse; 42 | } 43 | .ui-helper-clearfix:after { 44 | clear: both; 45 | } 46 | .ui-helper-clearfix { 47 | min-height: 0; /* support: IE7 */ 48 | } 49 | .ui-helper-zfix { 50 | width: 100%; 51 | height: 100%; 52 | top: 0; 53 | left: 0; 54 | position: absolute; 55 | opacity: 0; 56 | filter:Alpha(Opacity=0); /* support: IE8 */ 57 | } 58 | 59 | .ui-front { 60 | z-index: 100; 61 | } 62 | 63 | 64 | /* Interaction Cues 65 | ----------------------------------*/ 66 | .ui-state-disabled { 67 | cursor: default !important; 68 | } 69 | 70 | 71 | /* Icons 72 | ----------------------------------*/ 73 | 74 | /* states and images */ 75 | .ui-icon { 76 | display: block; 77 | text-indent: -99999px; 78 | overflow: hidden; 79 | background-repeat: no-repeat; 80 | } 81 | 82 | 83 | /* Misc visuals 84 | ----------------------------------*/ 85 | 86 | /* Overlays */ 87 | .ui-widget-overlay { 88 | position: fixed; 89 | top: 0; 90 | left: 0; 91 | width: 100%; 92 | height: 100%; 93 | } 94 | .ui-draggable-handle { 95 | -ms-touch-action: none; 96 | touch-action: none; 97 | } 98 | .ui-resizable { 99 | position: relative; 100 | } 101 | .ui-resizable-handle { 102 | position: absolute; 103 | font-size: 0.1px; 104 | display: block; 105 | -ms-touch-action: none; 106 | touch-action: none; 107 | } 108 | .ui-resizable-disabled .ui-resizable-handle, 109 | .ui-resizable-autohide .ui-resizable-handle { 110 | display: none; 111 | } 112 | .ui-resizable-n { 113 | cursor: n-resize; 114 | height: 7px; 115 | width: 100%; 116 | top: -5px; 117 | left: 0; 118 | } 119 | .ui-resizable-s { 120 | cursor: s-resize; 121 | height: 7px; 122 | width: 100%; 123 | bottom: -5px; 124 | left: 0; 125 | } 126 | .ui-resizable-e { 127 | cursor: e-resize; 128 | width: 7px; 129 | right: -5px; 130 | top: 0; 131 | height: 100%; 132 | } 133 | .ui-resizable-w { 134 | cursor: w-resize; 135 | width: 7px; 136 | left: -5px; 137 | top: 0; 138 | height: 100%; 139 | } 140 | .ui-resizable-se { 141 | cursor: se-resize; 142 | width: 12px; 143 | height: 12px; 144 | right: 1px; 145 | bottom: 1px; 146 | } 147 | .ui-resizable-sw { 148 | cursor: sw-resize; 149 | width: 9px; 150 | height: 9px; 151 | left: -5px; 152 | bottom: -5px; 153 | } 154 | .ui-resizable-nw { 155 | cursor: nw-resize; 156 | width: 9px; 157 | height: 9px; 158 | left: -5px; 159 | top: -5px; 160 | } 161 | .ui-resizable-ne { 162 | cursor: ne-resize; 163 | width: 9px; 164 | height: 9px; 165 | right: -5px; 166 | top: -5px; 167 | } 168 | .ui-selectable { 169 | -ms-touch-action: none; 170 | touch-action: none; 171 | } 172 | .ui-selectable-helper { 173 | position: absolute; 174 | z-index: 100; 175 | border: 1px dotted black; 176 | } 177 | .ui-button { 178 | display: inline-block; 179 | position: relative; 180 | padding: 0; 181 | line-height: normal; 182 | margin-right: .1em; 183 | cursor: pointer; 184 | vertical-align: middle; 185 | text-align: center; 186 | overflow: visible; /* removes extra width in IE */ 187 | } 188 | .ui-button, 189 | .ui-button:link, 190 | .ui-button:visited, 191 | .ui-button:hover, 192 | .ui-button:active { 193 | text-decoration: none; 194 | } 195 | /* to make room for the icon, a width needs to be set here */ 196 | .ui-button-icon-only { 197 | width: 2.2em; 198 | } 199 | /* button elements seem to need a little more width */ 200 | button.ui-button-icon-only { 201 | width: 2.4em; 202 | } 203 | .ui-button-icons-only { 204 | width: 3.4em; 205 | } 206 | button.ui-button-icons-only { 207 | width: 3.7em; 208 | } 209 | 210 | /* button text element */ 211 | .ui-button .ui-button-text { 212 | display: block; 213 | line-height: normal; 214 | } 215 | .ui-button-text-only .ui-button-text { 216 | padding: .4em 1em; 217 | } 218 | .ui-button-icon-only .ui-button-text, 219 | .ui-button-icons-only .ui-button-text { 220 | padding: .4em; 221 | text-indent: -9999999px; 222 | } 223 | .ui-button-text-icon-primary .ui-button-text, 224 | .ui-button-text-icons .ui-button-text { 225 | padding: .4em 1em .4em 2.1em; 226 | } 227 | .ui-button-text-icon-secondary .ui-button-text, 228 | .ui-button-text-icons .ui-button-text { 229 | padding: .4em 2.1em .4em 1em; 230 | } 231 | .ui-button-text-icons .ui-button-text { 232 | padding-left: 2.1em; 233 | padding-right: 2.1em; 234 | } 235 | /* no icon support for input elements, provide padding by default */ 236 | input.ui-button { 237 | padding: .4em 1em; 238 | } 239 | 240 | /* button icon element(s) */ 241 | .ui-button-icon-only .ui-icon, 242 | .ui-button-text-icon-primary .ui-icon, 243 | .ui-button-text-icon-secondary .ui-icon, 244 | .ui-button-text-icons .ui-icon, 245 | .ui-button-icons-only .ui-icon { 246 | position: absolute; 247 | top: 50%; 248 | margin-top: -8px; 249 | } 250 | .ui-button-icon-only .ui-icon { 251 | left: 50%; 252 | margin-left: -8px; 253 | } 254 | .ui-button-text-icon-primary .ui-button-icon-primary, 255 | .ui-button-text-icons .ui-button-icon-primary, 256 | .ui-button-icons-only .ui-button-icon-primary { 257 | left: .5em; 258 | } 259 | .ui-button-text-icon-secondary .ui-button-icon-secondary, 260 | .ui-button-text-icons .ui-button-icon-secondary, 261 | .ui-button-icons-only .ui-button-icon-secondary { 262 | right: .5em; 263 | } 264 | 265 | /* button sets */ 266 | .ui-buttonset { 267 | margin-right: 7px; 268 | } 269 | .ui-buttonset .ui-button { 270 | margin-left: 0; 271 | margin-right: -.3em; 272 | } 273 | 274 | /* workarounds */ 275 | /* reset extra padding in Firefox, see h5bp.com/l */ 276 | input.ui-button::-moz-focus-inner, 277 | button.ui-button::-moz-focus-inner { 278 | border: 0; 279 | padding: 0; 280 | } 281 | .ui-dialog { 282 | overflow: hidden; 283 | position: absolute; 284 | top: 0; 285 | left: 0; 286 | padding: .2em; 287 | outline: 0; 288 | } 289 | .ui-dialog .ui-dialog-titlebar { 290 | padding: .4em 1em; 291 | position: relative; 292 | } 293 | .ui-dialog .ui-dialog-title { 294 | float: left; 295 | margin: .1em 0; 296 | white-space: nowrap; 297 | width: 90%; 298 | overflow: hidden; 299 | text-overflow: ellipsis; 300 | } 301 | .ui-dialog .ui-dialog-titlebar-close { 302 | position: absolute; 303 | right: .3em; 304 | top: 50%; 305 | width: 20px; 306 | margin: -10px 0 0 0; 307 | padding: 1px; 308 | height: 20px; 309 | } 310 | .ui-dialog .ui-dialog-content { 311 | position: relative; 312 | border: 0; 313 | padding: .5em 1em; 314 | background: none; 315 | overflow: auto; 316 | } 317 | .ui-dialog .ui-dialog-buttonpane { 318 | text-align: left; 319 | border-width: 1px 0 0 0; 320 | background-image: none; 321 | margin-top: .5em; 322 | padding: .3em 1em .5em .4em; 323 | } 324 | .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { 325 | float: right; 326 | } 327 | .ui-dialog .ui-dialog-buttonpane button { 328 | margin: .5em .4em .5em 0; 329 | cursor: pointer; 330 | } 331 | .ui-dialog .ui-resizable-se { 332 | width: 12px; 333 | height: 12px; 334 | right: -5px; 335 | bottom: -5px; 336 | background-position: 16px 16px; 337 | } 338 | .ui-draggable .ui-dialog-titlebar { 339 | cursor: move; 340 | } 341 | .ui-tooltip { 342 | padding: 8px; 343 | position: absolute; 344 | z-index: 9999; 345 | max-width: 300px; 346 | -webkit-box-shadow: 0 0 5px #aaa; 347 | box-shadow: 0 0 5px #aaa; 348 | } 349 | body .ui-tooltip { 350 | border-width: 2px; 351 | } 352 | -------------------------------------------------------------------------------- /jquery-ui.structure.min.css: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.11.2 - 2015-01-12 2 | * http://jqueryui.com 3 | * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */ 4 | 5 | .ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable{-ms-touch-action:none;touch-action:none}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-dialog{overflow:hidden;position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px} -------------------------------------------------------------------------------- /jquery-ui.theme.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * jQuery UI CSS Framework 1.11.2 3 | * http://jqueryui.com 4 | * 5 | * Copyright 2014 jQuery Foundation and other contributors 6 | * Released under the MIT license. 7 | * http://jquery.org/license 8 | * 9 | * http://api.jqueryui.com/category/theming/ 10 | * 11 | * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS%2CTahoma%2CVerdana%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=gloss_wave&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=highlight_soft&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=glass&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=glass&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=diagonals_thick&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=diagonals_thick&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=flat&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px 12 | */ 13 | 14 | 15 | /* Component containers 16 | ----------------------------------*/ 17 | .ui-widget { 18 | font-family: Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; 19 | font-size: 1.1em; 20 | } 21 | .ui-widget .ui-widget { 22 | font-size: 1em; 23 | } 24 | .ui-widget input, 25 | .ui-widget select, 26 | .ui-widget textarea, 27 | .ui-widget button { 28 | font-family: Trebuchet MS,Tahoma,Verdana,Arial,sans-serif; 29 | font-size: 1em; 30 | } 31 | .ui-widget-content { 32 | border: 1px solid #dddddd; 33 | background: #eeeeee url("images/ui-bg_highlight-soft_100_eeeeee_1x100.png") 50% top repeat-x; 34 | color: #333333; 35 | } 36 | .ui-widget-content a { 37 | color: #333333; 38 | } 39 | .ui-widget-header { 40 | border: 1px solid #e78f08; 41 | background: #f6a828 url("images/ui-bg_gloss-wave_35_f6a828_500x100.png") 50% 50% repeat-x; 42 | color: #ffffff; 43 | font-weight: bold; 44 | } 45 | .ui-widget-header a { 46 | color: #ffffff; 47 | } 48 | 49 | /* Interaction states 50 | ----------------------------------*/ 51 | .ui-state-default, 52 | .ui-widget-content .ui-state-default, 53 | .ui-widget-header .ui-state-default { 54 | border: 1px solid #cccccc; 55 | background: #f6f6f6 url("images/ui-bg_glass_100_f6f6f6_1x400.png") 50% 50% repeat-x; 56 | font-weight: bold; 57 | color: #1c94c4; 58 | } 59 | .ui-state-default a, 60 | .ui-state-default a:link, 61 | .ui-state-default a:visited { 62 | color: #1c94c4; 63 | text-decoration: none; 64 | } 65 | .ui-state-hover, 66 | .ui-widget-content .ui-state-hover, 67 | .ui-widget-header .ui-state-hover, 68 | .ui-state-focus, 69 | .ui-widget-content .ui-state-focus, 70 | .ui-widget-header .ui-state-focus { 71 | border: 1px solid #fbcb09; 72 | background: #fdf5ce url("images/ui-bg_glass_100_fdf5ce_1x400.png") 50% 50% repeat-x; 73 | font-weight: bold; 74 | color: #c77405; 75 | } 76 | .ui-state-hover a, 77 | .ui-state-hover a:hover, 78 | .ui-state-hover a:link, 79 | .ui-state-hover a:visited, 80 | .ui-state-focus a, 81 | .ui-state-focus a:hover, 82 | .ui-state-focus a:link, 83 | .ui-state-focus a:visited { 84 | color: #c77405; 85 | text-decoration: none; 86 | } 87 | .ui-state-active, 88 | .ui-widget-content .ui-state-active, 89 | .ui-widget-header .ui-state-active { 90 | border: 1px solid #fbd850; 91 | background: #ffffff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x; 92 | font-weight: bold; 93 | color: #eb8f00; 94 | } 95 | .ui-state-active a, 96 | .ui-state-active a:link, 97 | .ui-state-active a:visited { 98 | color: #eb8f00; 99 | text-decoration: none; 100 | } 101 | 102 | /* Interaction Cues 103 | ----------------------------------*/ 104 | .ui-state-highlight, 105 | .ui-widget-content .ui-state-highlight, 106 | .ui-widget-header .ui-state-highlight { 107 | border: 1px solid #fed22f; 108 | background: #ffe45c url("images/ui-bg_highlight-soft_75_ffe45c_1x100.png") 50% top repeat-x; 109 | color: #363636; 110 | } 111 | .ui-state-highlight a, 112 | .ui-widget-content .ui-state-highlight a, 113 | .ui-widget-header .ui-state-highlight a { 114 | color: #363636; 115 | } 116 | .ui-state-error, 117 | .ui-widget-content .ui-state-error, 118 | .ui-widget-header .ui-state-error { 119 | border: 1px solid #cd0a0a; 120 | background: #b81900 url("images/ui-bg_diagonals-thick_18_b81900_40x40.png") 50% 50% repeat; 121 | color: #ffffff; 122 | } 123 | .ui-state-error a, 124 | .ui-widget-content .ui-state-error a, 125 | .ui-widget-header .ui-state-error a { 126 | color: #ffffff; 127 | } 128 | .ui-state-error-text, 129 | .ui-widget-content .ui-state-error-text, 130 | .ui-widget-header .ui-state-error-text { 131 | color: #ffffff; 132 | } 133 | .ui-priority-primary, 134 | .ui-widget-content .ui-priority-primary, 135 | .ui-widget-header .ui-priority-primary { 136 | font-weight: bold; 137 | } 138 | .ui-priority-secondary, 139 | .ui-widget-content .ui-priority-secondary, 140 | .ui-widget-header .ui-priority-secondary { 141 | opacity: .7; 142 | filter:Alpha(Opacity=70); /* support: IE8 */ 143 | font-weight: normal; 144 | } 145 | .ui-state-disabled, 146 | .ui-widget-content .ui-state-disabled, 147 | .ui-widget-header .ui-state-disabled { 148 | opacity: .35; 149 | filter:Alpha(Opacity=35); /* support: IE8 */ 150 | background-image: none; 151 | } 152 | .ui-state-disabled .ui-icon { 153 | filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */ 154 | } 155 | 156 | /* Icons 157 | ----------------------------------*/ 158 | 159 | /* states and images */ 160 | .ui-icon { 161 | width: 16px; 162 | height: 16px; 163 | } 164 | .ui-icon, 165 | .ui-widget-content .ui-icon { 166 | background-image: url("images/ui-icons_222222_256x240.png"); 167 | } 168 | .ui-widget-header .ui-icon { 169 | background-image: url("images/ui-icons_ffffff_256x240.png"); 170 | } 171 | .ui-state-default .ui-icon { 172 | background-image: url("images/ui-icons_ef8c08_256x240.png"); 173 | } 174 | .ui-state-hover .ui-icon, 175 | .ui-state-focus .ui-icon { 176 | background-image: url("images/ui-icons_ef8c08_256x240.png"); 177 | } 178 | .ui-state-active .ui-icon { 179 | background-image: url("images/ui-icons_ef8c08_256x240.png"); 180 | } 181 | .ui-state-highlight .ui-icon { 182 | background-image: url("images/ui-icons_228ef1_256x240.png"); 183 | } 184 | .ui-state-error .ui-icon, 185 | .ui-state-error-text .ui-icon { 186 | background-image: url("images/ui-icons_ffd27a_256x240.png"); 187 | } 188 | 189 | /* positioning */ 190 | .ui-icon-blank { background-position: 16px 16px; } 191 | .ui-icon-carat-1-n { background-position: 0 0; } 192 | .ui-icon-carat-1-ne { background-position: -16px 0; } 193 | .ui-icon-carat-1-e { background-position: -32px 0; } 194 | .ui-icon-carat-1-se { background-position: -48px 0; } 195 | .ui-icon-carat-1-s { background-position: -64px 0; } 196 | .ui-icon-carat-1-sw { background-position: -80px 0; } 197 | .ui-icon-carat-1-w { background-position: -96px 0; } 198 | .ui-icon-carat-1-nw { background-position: -112px 0; } 199 | .ui-icon-carat-2-n-s { background-position: -128px 0; } 200 | .ui-icon-carat-2-e-w { background-position: -144px 0; } 201 | .ui-icon-triangle-1-n { background-position: 0 -16px; } 202 | .ui-icon-triangle-1-ne { background-position: -16px -16px; } 203 | .ui-icon-triangle-1-e { background-position: -32px -16px; } 204 | .ui-icon-triangle-1-se { background-position: -48px -16px; } 205 | .ui-icon-triangle-1-s { background-position: -64px -16px; } 206 | .ui-icon-triangle-1-sw { background-position: -80px -16px; } 207 | .ui-icon-triangle-1-w { background-position: -96px -16px; } 208 | .ui-icon-triangle-1-nw { background-position: -112px -16px; } 209 | .ui-icon-triangle-2-n-s { background-position: -128px -16px; } 210 | .ui-icon-triangle-2-e-w { background-position: -144px -16px; } 211 | .ui-icon-arrow-1-n { background-position: 0 -32px; } 212 | .ui-icon-arrow-1-ne { background-position: -16px -32px; } 213 | .ui-icon-arrow-1-e { background-position: -32px -32px; } 214 | .ui-icon-arrow-1-se { background-position: -48px -32px; } 215 | .ui-icon-arrow-1-s { background-position: -64px -32px; } 216 | .ui-icon-arrow-1-sw { background-position: -80px -32px; } 217 | .ui-icon-arrow-1-w { background-position: -96px -32px; } 218 | .ui-icon-arrow-1-nw { background-position: -112px -32px; } 219 | .ui-icon-arrow-2-n-s { background-position: -128px -32px; } 220 | .ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } 221 | .ui-icon-arrow-2-e-w { background-position: -160px -32px; } 222 | .ui-icon-arrow-2-se-nw { background-position: -176px -32px; } 223 | .ui-icon-arrowstop-1-n { background-position: -192px -32px; } 224 | .ui-icon-arrowstop-1-e { background-position: -208px -32px; } 225 | .ui-icon-arrowstop-1-s { background-position: -224px -32px; } 226 | .ui-icon-arrowstop-1-w { background-position: -240px -32px; } 227 | .ui-icon-arrowthick-1-n { background-position: 0 -48px; } 228 | .ui-icon-arrowthick-1-ne { background-position: -16px -48px; } 229 | .ui-icon-arrowthick-1-e { background-position: -32px -48px; } 230 | .ui-icon-arrowthick-1-se { background-position: -48px -48px; } 231 | .ui-icon-arrowthick-1-s { background-position: -64px -48px; } 232 | .ui-icon-arrowthick-1-sw { background-position: -80px -48px; } 233 | .ui-icon-arrowthick-1-w { background-position: -96px -48px; } 234 | .ui-icon-arrowthick-1-nw { background-position: -112px -48px; } 235 | .ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } 236 | .ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } 237 | .ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } 238 | .ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } 239 | .ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } 240 | .ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } 241 | .ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } 242 | .ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } 243 | .ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } 244 | .ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } 245 | .ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } 246 | .ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } 247 | .ui-icon-arrowreturn-1-w { background-position: -64px -64px; } 248 | .ui-icon-arrowreturn-1-n { background-position: -80px -64px; } 249 | .ui-icon-arrowreturn-1-e { background-position: -96px -64px; } 250 | .ui-icon-arrowreturn-1-s { background-position: -112px -64px; } 251 | .ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } 252 | .ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } 253 | .ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } 254 | .ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } 255 | .ui-icon-arrow-4 { background-position: 0 -80px; } 256 | .ui-icon-arrow-4-diag { background-position: -16px -80px; } 257 | .ui-icon-extlink { background-position: -32px -80px; } 258 | .ui-icon-newwin { background-position: -48px -80px; } 259 | .ui-icon-refresh { background-position: -64px -80px; } 260 | .ui-icon-shuffle { background-position: -80px -80px; } 261 | .ui-icon-transfer-e-w { background-position: -96px -80px; } 262 | .ui-icon-transferthick-e-w { background-position: -112px -80px; } 263 | .ui-icon-folder-collapsed { background-position: 0 -96px; } 264 | .ui-icon-folder-open { background-position: -16px -96px; } 265 | .ui-icon-document { background-position: -32px -96px; } 266 | .ui-icon-document-b { background-position: -48px -96px; } 267 | .ui-icon-note { background-position: -64px -96px; } 268 | .ui-icon-mail-closed { background-position: -80px -96px; } 269 | .ui-icon-mail-open { background-position: -96px -96px; } 270 | .ui-icon-suitcase { background-position: -112px -96px; } 271 | .ui-icon-comment { background-position: -128px -96px; } 272 | .ui-icon-person { background-position: -144px -96px; } 273 | .ui-icon-print { background-position: -160px -96px; } 274 | .ui-icon-trash { background-position: -176px -96px; } 275 | .ui-icon-locked { background-position: -192px -96px; } 276 | .ui-icon-unlocked { background-position: -208px -96px; } 277 | .ui-icon-bookmark { background-position: -224px -96px; } 278 | .ui-icon-tag { background-position: -240px -96px; } 279 | .ui-icon-home { background-position: 0 -112px; } 280 | .ui-icon-flag { background-position: -16px -112px; } 281 | .ui-icon-calendar { background-position: -32px -112px; } 282 | .ui-icon-cart { background-position: -48px -112px; } 283 | .ui-icon-pencil { background-position: -64px -112px; } 284 | .ui-icon-clock { background-position: -80px -112px; } 285 | .ui-icon-disk { background-position: -96px -112px; } 286 | .ui-icon-calculator { background-position: -112px -112px; } 287 | .ui-icon-zoomin { background-position: -128px -112px; } 288 | .ui-icon-zoomout { background-position: -144px -112px; } 289 | .ui-icon-search { background-position: -160px -112px; } 290 | .ui-icon-wrench { background-position: -176px -112px; } 291 | .ui-icon-gear { background-position: -192px -112px; } 292 | .ui-icon-heart { background-position: -208px -112px; } 293 | .ui-icon-star { background-position: -224px -112px; } 294 | .ui-icon-link { background-position: -240px -112px; } 295 | .ui-icon-cancel { background-position: 0 -128px; } 296 | .ui-icon-plus { background-position: -16px -128px; } 297 | .ui-icon-plusthick { background-position: -32px -128px; } 298 | .ui-icon-minus { background-position: -48px -128px; } 299 | .ui-icon-minusthick { background-position: -64px -128px; } 300 | .ui-icon-close { background-position: -80px -128px; } 301 | .ui-icon-closethick { background-position: -96px -128px; } 302 | .ui-icon-key { background-position: -112px -128px; } 303 | .ui-icon-lightbulb { background-position: -128px -128px; } 304 | .ui-icon-scissors { background-position: -144px -128px; } 305 | .ui-icon-clipboard { background-position: -160px -128px; } 306 | .ui-icon-copy { background-position: -176px -128px; } 307 | .ui-icon-contact { background-position: -192px -128px; } 308 | .ui-icon-image { background-position: -208px -128px; } 309 | .ui-icon-video { background-position: -224px -128px; } 310 | .ui-icon-script { background-position: -240px -128px; } 311 | .ui-icon-alert { background-position: 0 -144px; } 312 | .ui-icon-info { background-position: -16px -144px; } 313 | .ui-icon-notice { background-position: -32px -144px; } 314 | .ui-icon-help { background-position: -48px -144px; } 315 | .ui-icon-check { background-position: -64px -144px; } 316 | .ui-icon-bullet { background-position: -80px -144px; } 317 | .ui-icon-radio-on { background-position: -96px -144px; } 318 | .ui-icon-radio-off { background-position: -112px -144px; } 319 | .ui-icon-pin-w { background-position: -128px -144px; } 320 | .ui-icon-pin-s { background-position: -144px -144px; } 321 | .ui-icon-play { background-position: 0 -160px; } 322 | .ui-icon-pause { background-position: -16px -160px; } 323 | .ui-icon-seek-next { background-position: -32px -160px; } 324 | .ui-icon-seek-prev { background-position: -48px -160px; } 325 | .ui-icon-seek-end { background-position: -64px -160px; } 326 | .ui-icon-seek-start { background-position: -80px -160px; } 327 | /* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ 328 | .ui-icon-seek-first { background-position: -80px -160px; } 329 | .ui-icon-stop { background-position: -96px -160px; } 330 | .ui-icon-eject { background-position: -112px -160px; } 331 | .ui-icon-volume-off { background-position: -128px -160px; } 332 | .ui-icon-volume-on { background-position: -144px -160px; } 333 | .ui-icon-power { background-position: 0 -176px; } 334 | .ui-icon-signal-diag { background-position: -16px -176px; } 335 | .ui-icon-signal { background-position: -32px -176px; } 336 | .ui-icon-battery-0 { background-position: -48px -176px; } 337 | .ui-icon-battery-1 { background-position: -64px -176px; } 338 | .ui-icon-battery-2 { background-position: -80px -176px; } 339 | .ui-icon-battery-3 { background-position: -96px -176px; } 340 | .ui-icon-circle-plus { background-position: 0 -192px; } 341 | .ui-icon-circle-minus { background-position: -16px -192px; } 342 | .ui-icon-circle-close { background-position: -32px -192px; } 343 | .ui-icon-circle-triangle-e { background-position: -48px -192px; } 344 | .ui-icon-circle-triangle-s { background-position: -64px -192px; } 345 | .ui-icon-circle-triangle-w { background-position: -80px -192px; } 346 | .ui-icon-circle-triangle-n { background-position: -96px -192px; } 347 | .ui-icon-circle-arrow-e { background-position: -112px -192px; } 348 | .ui-icon-circle-arrow-s { background-position: -128px -192px; } 349 | .ui-icon-circle-arrow-w { background-position: -144px -192px; } 350 | .ui-icon-circle-arrow-n { background-position: -160px -192px; } 351 | .ui-icon-circle-zoomin { background-position: -176px -192px; } 352 | .ui-icon-circle-zoomout { background-position: -192px -192px; } 353 | .ui-icon-circle-check { background-position: -208px -192px; } 354 | .ui-icon-circlesmall-plus { background-position: 0 -208px; } 355 | .ui-icon-circlesmall-minus { background-position: -16px -208px; } 356 | .ui-icon-circlesmall-close { background-position: -32px -208px; } 357 | .ui-icon-squaresmall-plus { background-position: -48px -208px; } 358 | .ui-icon-squaresmall-minus { background-position: -64px -208px; } 359 | .ui-icon-squaresmall-close { background-position: -80px -208px; } 360 | .ui-icon-grip-dotted-vertical { background-position: 0 -224px; } 361 | .ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } 362 | .ui-icon-grip-solid-vertical { background-position: -32px -224px; } 363 | .ui-icon-grip-solid-horizontal { background-position: -48px -224px; } 364 | .ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } 365 | .ui-icon-grip-diagonal-se { background-position: -80px -224px; } 366 | 367 | 368 | /* Misc visuals 369 | ----------------------------------*/ 370 | 371 | /* Corner radius */ 372 | .ui-corner-all, 373 | .ui-corner-top, 374 | .ui-corner-left, 375 | .ui-corner-tl { 376 | border-top-left-radius: 4px; 377 | } 378 | .ui-corner-all, 379 | .ui-corner-top, 380 | .ui-corner-right, 381 | .ui-corner-tr { 382 | border-top-right-radius: 4px; 383 | } 384 | .ui-corner-all, 385 | .ui-corner-bottom, 386 | .ui-corner-left, 387 | .ui-corner-bl { 388 | border-bottom-left-radius: 4px; 389 | } 390 | .ui-corner-all, 391 | .ui-corner-bottom, 392 | .ui-corner-right, 393 | .ui-corner-br { 394 | border-bottom-right-radius: 4px; 395 | } 396 | 397 | /* Overlays */ 398 | .ui-widget-overlay { 399 | background: #666666 url("images/ui-bg_diagonals-thick_20_666666_40x40.png") 50% 50% repeat; 400 | opacity: .5; 401 | filter: Alpha(Opacity=50); /* support: IE8 */ 402 | } 403 | .ui-widget-shadow { 404 | margin: -5px 0 0 -5px; 405 | padding: 5px; 406 | background: #000000 url("images/ui-bg_flat_10_000000_40x100.png") 50% 50% repeat-x; 407 | opacity: .2; 408 | filter: Alpha(Opacity=20); /* support: IE8 */ 409 | border-radius: 5px; 410 | } 411 | -------------------------------------------------------------------------------- /jquery-ui.theme.min.css: -------------------------------------------------------------------------------- 1 | /*! jQuery UI - v1.11.2 - 2015-01-12 2 | * http://jqueryui.com 3 | * Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */ 4 | 5 | .ui-widget{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #ddd;background:#eee url("images/ui-bg_highlight-soft_100_eeeeee_1x100.png") 50% top repeat-x;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #e78f08;background:#f6a828 url("images/ui-bg_gloss-wave_35_f6a828_500x100.png") 50% 50% repeat-x;color:#fff;font-weight:bold}.ui-widget-header a{color:#fff}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #ccc;background:#f6f6f6 url("images/ui-bg_glass_100_f6f6f6_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#1c94c4}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#1c94c4;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #fbcb09;background:#fdf5ce url("images/ui-bg_glass_100_fdf5ce_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#c77405}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#c77405;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #fbd850;background:#fff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#eb8f00}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#eb8f00;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fed22f;background:#ffe45c url("images/ui-bg_highlight-soft_75_ffe45c_1x100.png") 50% top repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#b81900 url("images/ui-bg_diagonals-thick_18_b81900_40x40.png") 50% 50% repeat;color:#fff}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#fff}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#fff}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_228ef1_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_ffd27a_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#666 url("images/ui-bg_diagonals-thick_20_666666_40x40.png") 50% 50% repeat;opacity:.5;filter:Alpha(Opacity=50)}.ui-widget-shadow{margin:-5px 0 0 -5px;padding:5px;background:#000 url("images/ui-bg_flat_10_000000_40x100.png") 50% 50% repeat-x;opacity:.2;filter:Alpha(Opacity=20);border-radius:5px} -------------------------------------------------------------------------------- /pureengine.css: -------------------------------------------------------------------------------- 1 | .mainfont,td,input,select { 2 | font-family: Verdana, Geneva, sans-serif; 3 | font-size: 85%; 4 | color: 222222; 5 | } 6 | a:hover, a:link, a:visited { 7 | color: 333333; 8 | } 9 | .grey { 10 | background-color:#cccccc 11 | } 12 | .hiddenBlock { 13 | display:none; 14 | } 15 | .alignwidth { 16 | width:100%; 17 | } 18 | .alignwidth:disabled { 19 | background-color:#cccccc; 20 | } 21 | .cursorPointer { 22 | cursor: pointer; 23 | } 24 | table.inputTable td.fixwidth { 25 | width:400px; 26 | } 27 | table.inputTable td.fixwidthhalf { 28 | width:200px; 29 | } 30 | #idTableShowMeConsole td { 31 | width:150px; 32 | } 33 | #idTableShowMeConsole { 34 | width:200px; 35 | 36 | } 37 | #idTableShowMeHow { 38 | height:200px; 39 | } 40 | 41 | #idPopUpDiv { 42 | position: fixed; 43 | top: 50%; 44 | left: 50%; 45 | 46 | border:2px solid #000000; 47 | height: 250px; 48 | overflow: auto; 49 | 50 | margin-left: -395px; 51 | margin-top: -100px; 52 | padding: 3px; 53 | 54 | width: 790px; 55 | z-index: 9999999; 56 | 57 | background-color:#eeeeee; 58 | text-align:center; 59 | } 60 | .px112 { 61 | width: 112px; 62 | } 63 | #idVDclose { 64 | display:inline-block; 65 | border:1px solid #cccccc; 66 | color:#cccccc; 67 | background-color:#ffffff; 68 | height:25px; width:25px; 69 | text-align:center; 70 | vertical-align:middle; 71 | line-height:25px; 72 | } 73 | .inputSpecific { 74 | 75 | } 76 | .fulltd { 77 | background-color:green; 78 | width:20px; 79 | height:10px; 80 | margin:0px; 81 | } 82 | .inctd { 83 | background-color:lightgreen; 84 | width:20px; 85 | height:10px; 86 | margin:0px; 87 | } 88 | .totalTopLine { 89 | border-top: 2px solid #444444; 90 | } 91 | .alert { 92 | color: #E64040; 93 | } 94 | .alpha { 95 | background-color: #E64040; 96 | color: white; 97 | font-family:verdana; 98 | font-size:30px; 99 | padding:20px 20px 20px 20px; 100 | margin-left:0px; 101 | margin-right:0px; 102 | margin-bottom:10px; 103 | margin-top: 10px; 104 | } 105 | /* //http://stackoverflow.com/questions/28931791/jquery-how-to-grey-out-the-background-while-showing-the-loading-icon-over-it*/ 106 | .overlay { 107 | background: #eeeeee; 108 | display: none; 109 | opacity:0.8; 110 | background-color:#ccc; 111 | position:fixed; 112 | width:100%; 113 | height:100%; 114 | top:0px; 115 | left:0px; 116 | z-index:1000; 117 | } 118 | .monthspan { 119 | width:30px; 120 | display:inline-block; 121 | } 122 | .weekspan { 123 | width:26px; 124 | display:inline-block; 125 | } 126 | .laststeps { 127 | font-size:large; 128 | } 129 | .widthpoint { 130 | width:180px; 131 | } 132 | .widthpointvisual { 133 | width:130px; 134 | } 135 | .widthfile { 136 | width:150px; 137 | } 138 | .widthdate { 139 | width:150px; 140 | } 141 | .widthsize { 142 | width: 150px; 143 | } -------------------------------------------------------------------------------- /releasenotes/README.md: -------------------------------------------------------------------------------- 1 | # 0.4.1: 2 | - ReFS algorithm 3 | - Added key down support : <+> key in manual mode to add one run 4 | - Added key down support : key in to do a simulation 5 | - Auto resize the result div to an estimated amount of restore points so that page does not constantly resizes when running in manual mode (will probably not work if table line does not fit window) 6 | 7 | # 0.3.3: 8 | - Active Full on GFS support (v9) feature 9 | - Replica Support 10 | - Experimental Canvas rendering. Generates and image that can be used in word documents so that you do not need to take screenshots. In Firefox and Chrome you can uses the download link (unsupported HTML download attribute). For other browsers, you should be able to right click the images and select save as 11 | - Export URL: Generate an URL that you can use to reinput your current result. URL gets updated every time you click "simulate" 12 | - Moved simulate button so it makes more "sense" 13 | - Advanced feature to simulate with custom dates, append ?reversesim to URL to open up console and modify. Watch out, MomentJS (framework used for time calculations) is very strict about leading zero's! 14 | - Advanced feature to show the latest result of the simulation instead of worst case scenario. Should be useful with ?reversesim and automatically set to 1 in this case 15 | - Advanced feature to show "real file names", append ?dev and set real name to 1 16 | - Minor GFS fixes 17 | 18 | # 0.3.2b: 19 | - Input validation RPs: You can now input 7d (7days), 2w (2weeks), 2q (2quarters) or 1y (1year). Will also take into account the selected interval. 20 | 21 | # 0.3.2: 22 | - Bandwidth help : click on the files size to get the number in bit vs bytes and over certain bandwidth periods 23 | - Summary table : click on the total size to get a summary of the "sizing" 24 | - Input validation GB: validate if numbers are being used for GB. Also allows you to specify TB or pb. For example, if you give 10tb as input, it will be transformed to 102400GB 25 | 26 | # 0.3.1 : 27 | - Added space growth 28 | - Updated GUI for easier input 29 | - Added possibility to see compressed throughput speed on repository by clicking the data size 30 | 31 | # 0.3.0 : 32 | - Renewed merging engine, should mimic more how the production engine works (based on documentation) 33 | 34 | # 0.2.9 : 35 | - Easing function for working space also works for manual mode 36 | 37 | # 0.2.8 : 38 | - Easing function for working space 39 | 40 | # 0.2.7 : 41 | - Added open source reference 42 | - Added css style to all items for more unified view 43 | - Added explanation for events in engine, needs gui 44 | - Changed the default change rate to 10% 45 | -------------------------------------------------------------------------------- /releasenotes/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Release Notes 6 | 26 | 27 | 28 | 29 | 30 |
31 | 32 |
33 | 40 |

Generated from /releasenotes/README.md with Markdown-js

41 | 42 | -------------------------------------------------------------------------------- /releasenotes/markdown.min.js: -------------------------------------------------------------------------------- 1 | !function(a){function b(){return"Markdown.mk_block( "+uneval(this.toString())+", "+uneval(this.trailing)+", "+uneval(this.lineNumber)+" )"}function c(){var a=require("util");return"Markdown.mk_block( "+a.inspect(this.toString())+", "+a.inspect(this.trailing)+", "+a.inspect(this.lineNumber)+" )"}function d(a){for(var b=0,c=-1;-1!==(c=a.indexOf("\n",c+1));)b++;return b}function e(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function f(a){if("string"==typeof a)return e(a);var b=a.shift(),c={},d=[];for(!a.length||"object"!=typeof a[0]||a[0]instanceof Array||(c=a.shift());a.length;)d.push(f(a.shift()));var g="";for(var h in c)g+=" "+h+'="'+e(c[h])+'"';return"img"===b||"br"===b||"hr"===b?"<"+b+g+"/>":"<"+b+g+">"+d.join("")+""}function g(a,b,c){var d;c=c||{};var e=a.slice(0);"function"==typeof c.preprocessTreeNode&&(e=c.preprocessTreeNode(e,b));var f=o(e);if(f){e[1]={};for(d in f)e[1][d]=f[d];f=e[1]}if("string"==typeof e)return e;switch(e[0]){case"header":e[0]="h"+e[1].level,delete e[1].level;break;case"bulletlist":e[0]="ul";break;case"numberlist":e[0]="ol";break;case"listitem":e[0]="li";break;case"para":e[0]="p";break;case"markdown":e[0]="html",f&&delete f.references;break;case"code_block":e[0]="pre",d=f?2:1;var h=["code"];h.push.apply(h,e.splice(d,e.length-d)),e[d]=h;break;case"inlinecode":e[0]="code";break;case"img":e[1].src=e[1].href,delete e[1].href;break;case"linebreak":e[0]="br";break;case"link":e[0]="a";break;case"link_ref":e[0]="a";var i=b[f.ref];if(!i)return f.original;delete f.ref,f.href=i.href,i.title&&(f.title=i.title),delete f.original;break;case"img_ref":e[0]="img";var i=b[f.ref];if(!i)return f.original;delete f.ref,f.src=i.href,i.title&&(f.title=i.title),delete f.original}if(d=1,f){for(var j in e[1]){d=2;break}1===d&&e.splice(d,1)}for(;d1&&"object"==typeof a[1]&&!l(a[1])?a[1]:void 0};var m=function(a){switch(typeof a){case"undefined":this.dialect=m.dialects.Gruber;break;case"object":this.dialect=a;break;default:if(!(a in m.dialects))throw new Error("Unknown Markdown dialect '"+String(a)+"'");this.dialect=m.dialects[a]}this.em_state=[],this.strong_state=[],this.debug_indent=""};m.dialects={};var n=m.mk_block=k.mk_block,l=k.isArray;m.parse=function(a,b){var c=new m(b);return c.toTree(a)},m.prototype.split_blocks=function(a){a=a.replace(/(\r\n|\n|\r)/g,"\n");var b,c=/([\s\S]+?)($|\n#|\n(?:\s*\n|$)+)/g,e=[],f=1;for(null!==(b=/^(\s*\n)/.exec(a))&&(f+=d(b[0]),c.lastIndex=b[0].length);null!==(b=c.exec(a));)"\n#"===b[2]&&(b[2]="\n",c.lastIndex--),e.push(n(b[1],b[2],f)),f+=d(b[0]);return e},m.prototype.processBlock=function(a,b){var c=this.dialect.block,d=c.__order__;if("__call__"in c)return c.__call__.call(this,a,b);for(var e=0;e0&&!l(f[0]))&&this.debug(d[e],"didn't return a proper array"),f}return[]},m.prototype.processInline=function(a){return this.dialect.inline.__call__.call(this,String(a))},m.prototype.toTree=function(a,b){var c=a instanceof Array?a:this.split_blocks(a),d=this.tree;try{for(this.tree=b||this.tree||["markdown"];c.length;){var e=this.processBlock(c.shift(),c);e.length&&this.tree.push.apply(this.tree,e)}return this.tree}finally{b&&(this.tree=d)}},m.prototype.debug=function(){var a=Array.prototype.slice.call(arguments);a.unshift(this.debug_indent),"undefined"!=typeof print&&print.apply(print,a),"undefined"!=typeof console&&"undefined"!=typeof console.log&&console.log.apply(null,a)},m.prototype.loop_re_over_block=function(a,b,c){for(var d,e=b.valueOf();e.length&&null!==(d=a.exec(e));)e=e.substr(d[0].length),c.call(this,d);return e},m.buildBlockOrder=function(a){var b=[];for(var c in a)"__order__"!==c&&"__call__"!==c&&b.push(c);a.__order__=b},m.buildInlinePatterns=function(a){var b=[];for(var c in a)if(!c.match(/^__.*__$/)){var d=c.replace(/([\\.*+?|()\[\]{}])/g,"\\$1").replace(/\n/,"\\n");b.push(1===c.length?d:"(?:"+d+")")}b=b.join("|"),a.__patterns__=b;var e=a.__call__;a.__call__=function(a,c){return void 0!==c?e.call(this,a,c):e.call(this,a,b)}};var o=k.extract_attr;m.renderJsonML=function(a,b){b=b||{},b.root=b.root||!1;var c=[];if(b.root)c.push(f(a));else for(a.shift(),!a.length||"object"!=typeof a[0]||a[0]instanceof Array||a.shift();a.length;)c.push(f(a.shift()));return c.join("\n\n")},m.toHTMLTree=function(a,b,c){"string"==typeof a&&(a=this.parse(a,b));var d=o(a),e={};d&&d.references&&(e=d.references);var f=g(a,e,c);return h(f),f},m.toHTML=function(a,b,c){var d=this.toHTMLTree(a,b,c);return this.renderJsonML(d)};var p={};p.inline_until_char=function(a,b){for(var c=0,d=[];;){if(a.charAt(c)===b)return c++,[c,d];if(c>=a.length)return null;var e=this.dialect.inline.__oneElement__.call(this,a.substr(c));c+=e[0],d.push.apply(d,e.slice(1))}},p.subclassDialect=function(a){function b(){}function c(){}return b.prototype=a.block,c.prototype=a.inline,{block:new b,inline:new c}};var q=k.forEach,o=k.extract_attr,n=k.mk_block,r=k.isEmpty,s=p.inline_until_char,t={block:{atxHeader:function(a,b){var c=a.match(/^(#{1,6})\s*(.*?)\s*#*\s*(?:\n|$)/);if(!c)return void 0;var d=["header",{level:c[1].length}];return Array.prototype.push.apply(d,this.processInline(c[2])),c[0].length1&&c.unshift(d);for(var f=0;f1&&"string"==typeof e[e.length-1]?e[e.length-1]+=g:e.push(g)}}function d(a,b){for(var c=new RegExp("^("+i+"{"+a+"}.*?\\n?)*$"),d=new RegExp("^"+i+"{"+a+"}","gm"),e=[];b.length>0&&c.exec(b[0]);){var f=b.shift(),g=f.replace(d,"");e.push(n(g,f.trailing,f.lineNumber))}return e}function e(a,b,c){var d=a.list,e=d[d.length-1];if(!(e[1]instanceof Array&&"para"===e[1][0]))if(b+1===c.length)e.push(["para"].concat(e.splice(1,e.length-1)));else{var f=e.pop();e.push(["para"].concat(e.splice(1,e.length-1)),f)}}var f="[*+-]|\\d+\\.",g=/[*+-]/,h=new RegExp("^( {0,3})("+f+")[ ]+"),i="(?: {0,3}\\t| {4})";return function(f,i){function j(a){var b=g.exec(a[2])?["bulletlist"]:["numberlist"];return n.push({list:b,indent:a[1]}),b}var k=f.match(h);if(!k)return void 0;for(var l,m,n=[],o=j(k),p=!1,r=[n[0].list];;){for(var s=f.split(/(?=\n)/),t="",u="",v=0;vn.length)o=j(k),l.push(o),l=o[1]=["listitem"];else{var z=!1;for(m=0;mk[0].length&&(t+=u+w.substr(k[0].length))}t.length&&(c(l,p,this.processInline(t),u),p=!1,t="");var A=d(n.length,i);A.length>0&&(q(n,e,this),l.push.apply(l,this.toTree(A,[])));var B=i[0]&&i[0].valueOf()||"";if(!B.match(h)&&!B.match(/^ /))break;f=i.shift();var C=this.dialect.block.horizRule(f,i);if(C){r.push.apply(r,C);break}q(n,e,this),p=!0}return r}}(),blockquote:function(a,b){if(!a.match(/^>/m))return void 0;var c=[];if(">"!==a[0]){for(var d=a.split(/\n/),e=[],f=a.lineNumber;d.length&&">"!==d[0][0];)e.push(d.shift()),f++;var g=n(e.join("\n"),"\n",a.lineNumber);c.push.apply(c,this.processBlock(g,[])),a=n(d.join("\n"),a.trailing,f)}for(;b.length&&">"===b[0][0];){var h=b.shift();a=n(a+a.trailing+h,h.trailing,a.lineNumber)}var i=a.replace(/^> ?/gm,""),j=(this.tree,this.toTree(i,["blockquote"])),k=o(j);return k&&k.references&&(delete k.references,r(k)&&j.splice(1,1)),c.push(j),c},referenceDefn:function(a,b){var c=/^\s*\[(.*?)\]:\s*(\S+)(?:\s+(?:(['"])(.*?)\3|\((.*?)\)))?\n?/;if(!a.match(c))return void 0;o(this.tree)||this.tree.splice(1,0,{});var d=o(this.tree);void 0===d.references&&(d.references={});var e=this.loop_re_over_block(c,a,function(a){a[2]&&"<"===a[2][0]&&">"===a[2][a[2].length-1]&&(a[2]=a[2].substring(1,a[2].length-1));var b=d.references[a[1].toLowerCase()]={href:a[2]};void 0!==a[4]?b.title=a[4]:void 0!==a[5]&&(b.title=a[5])});return e.length&&b.unshift(n(e,a.trailing)),[]},para:function(a){return[["para"].concat(this.processInline(a))]}},inline:{__oneElement__:function(a,b,c){var d,e;b=b||this.dialect.inline.__patterns__;var f=new RegExp("([\\s\\S]*?)("+(b.source||b)+")");if(d=f.exec(a),!d)return[a.length,a];if(d[1])return[d[1].length,d[1]];var e;return d[2]in this.dialect.inline&&(e=this.dialect.inline[d[2]].call(this,a.substr(d.index),d,c||[])),e=e||[d[2].length,d[2]]},__call__:function(a,b){function c(a){"string"==typeof a&&"string"==typeof e[e.length-1]?e[e.length-1]+=a:e.push(a)}for(var d,e=[];a.length>0;)d=this.dialect.inline.__oneElement__.call(this,a,b,e),a=a.substr(d.shift()),q(d,c);return e},"]":function(){},"}":function(){},__escape__:/^\\[\\`\*_{}\[\]()#\+.!\-]/,"\\":function(a){return this.dialect.inline.__escape__.exec(a)?[2,a.charAt(1)]:[1,"\\"]},"![":function(a){var b=a.match(/^!\[(.*?)\][ \t]*\([ \t]*([^")]*?)(?:[ \t]+(["'])(.*?)\3)?[ \t]*\)/);if(b){b[2]&&"<"===b[2][0]&&">"===b[2][b[2].length-1]&&(b[2]=b[2].substring(1,b[2].length-1)),b[2]=this.dialect.inline.__call__.call(this,b[2],/\\/)[0];var c={alt:b[1],href:b[2]||""};return void 0!==b[4]&&(c.title=b[4]),[b[0].length,["img",c]]}return b=a.match(/^!\[(.*?)\][ \t]*\[(.*?)\]/),b?[b[0].length,["img_ref",{alt:b[1],ref:b[2].toLowerCase(),original:b[0]}]]:[2,"!["]},"[":function v(a){var b=String(a),c=s.call(this,a.substr(1),"]");if(!c)return[1,"["];var v,d,e=1+c[0],f=c[1];a=a.substr(e);var g=a.match(/^\s*\([ \t]*([^"']*)(?:[ \t]+(["'])(.*?)\2)?[ \t]*\)/);if(g){var h=g[1];if(e+=g[0].length,h&&"<"===h[0]&&">"===h[h.length-1]&&(h=h.substring(1,h.length-1)),!g[3])for(var i=1,j=0;j]+)|(.*?@.*?\.[a-zA-Z]+))>/))?b[3]?[b[0].length,["link",{href:"mailto:"+b[3]},b[3]]]:"mailto"===b[2]?[b[0].length,["link",{href:b[1]},b[1].substr("mailto:".length)]]:[b[0].length,["link",{href:b[1]},b[1]]]:[1,"<"]},"`":function(a){var b=a.match(/(`+)(([\s\S]*?)\1)/);return b&&b[2]?[b[1].length+b[2].length,["inlinecode",b[3]]]:[1,"`"]}," \n":function(){return[3,["linebreak"]]}}};t.inline["**"]=i("strong","**"),t.inline.__=i("strong","__"),t.inline["*"]=i("em","*"),t.inline._=i("em","_"),m.dialects.Gruber=t,m.buildBlockOrder(m.dialects.Gruber.block),m.buildInlinePatterns(m.dialects.Gruber.inline);var u=p.subclassDialect(t),o=k.extract_attr,q=k.forEach;u.processMetaHash=function(a){for(var b=j(a),c={},d=0;d1)return void 0;if(!a.match(/^(?:\w+:.*\n)*\w+:.*$/))return void 0;o(this.tree)||this.tree.splice(1,0,{});var b=a.split(/\n/);for(var c in b){var d=b[c].match(/(\w+):\s*(.*)$/),e=d[1].toLowerCase(),f=d[2];this.tree[1][e]=f}return[]},u.block.block_meta=function(a){var b=a.match(/(^|\n) {0,3}\{:\s*((?:\\\}|[^\}])*)\s*\}$/);if(!b)return void 0;var c,d=this.dialect.processMetaHash(b[2]);if(""===b[1]){var e=this.tree[this.tree.length-1];if(c=o(e),"string"==typeof e)return void 0;c||(c={},e.splice(1,0,c));for(var f in d)c[f]=d[f];return[]}var g=a.replace(/\n.*$/,""),h=this.processBlock(g,[]);c=o(h[0]),c||(c={},h[0].splice(1,0,c));for(var f in d)c[f]=d[f];return h},u.block.definition_list=function(a,b){var c,d,e=/^((?:[^\s:].*\n)+):\s+([\s\S]+)$/,f=["dl"];if(!(d=a.match(e)))return void 0;for(var g=[a];b.length&&e.exec(b[0]);)g.push(b.shift());for(var h=0;h 2 | 3 | 4 | 22 | 24 | 32 | 37 | 38 | 47 | 52 | 53 | 61 | 66 | 67 | 75 | 80 | 81 | 89 | 94 | 95 | 103 | 108 | 109 | 110 | 128 | 130 | 131 | 133 | image/svg+xml 134 | 136 | 137 | 138 | 139 | 140 | 144 | 151 | Need HTML5-orPush Simulate 182 | 189 | 196 | 202 | 209 | 216 | 223 | 231 | 239 | 247 | 255 | 263 | 271 | 272 | 273 | -------------------------------------------------------------------------------- /rpsimg/cgfs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/cgfs.png -------------------------------------------------------------------------------- /rpsimg/dragme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/dragme.png -------------------------------------------------------------------------------- /rpsimg/full.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/full.png -------------------------------------------------------------------------------- /rpsimg/gfs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/gfs.png -------------------------------------------------------------------------------- /rpsimg/gfsl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/gfsl.png -------------------------------------------------------------------------------- /rpsimg/help.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/help.png -------------------------------------------------------------------------------- /rpsimg/help.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/help.xcf -------------------------------------------------------------------------------- /rpsimg/inc-up-img2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/inc-up-img2.png -------------------------------------------------------------------------------- /rpsimg/linked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/linked.png -------------------------------------------------------------------------------- /rpsimg/nohtml5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/nohtml5.png -------------------------------------------------------------------------------- /rpsimg/rev-down-img2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tdewin/rps/4e26f73df20cbe8f9a4e667d82d3e5fff41aee3b/rpsimg/rev-down-img2.png -------------------------------------------------------------------------------- /spin.min.js: -------------------------------------------------------------------------------- 1 | // http://spin.js.org/#v2.3.2 2 | !function(a,b){"object"==typeof module&&module.exports?module.exports=b():"function"==typeof define&&define.amd?define(b):a.Spinner=b()}(this,function(){"use strict";function a(a,b){var c,d=document.createElement(a||"div");for(c in b)d[c]=b[c];return d}function b(a){for(var b=1,c=arguments.length;c>b;b++)a.appendChild(arguments[b]);return a}function c(a,b,c,d){var e=["opacity",b,~~(100*a),c,d].join("-"),f=.01+c/d*100,g=Math.max(1-(1-a)/b*(100-f),a),h=j.substring(0,j.indexOf("Animation")).toLowerCase(),i=h&&"-"+h+"-"||"";return m[e]||(k.insertRule("@"+i+"keyframes "+e+"{0%{opacity:"+g+"}"+f+"%{opacity:"+a+"}"+(f+.01)+"%{opacity:1}"+(f+b)%100+"%{opacity:"+a+"}100%{opacity:"+g+"}}",k.cssRules.length),m[e]=1),e}function d(a,b){var c,d,e=a.style;if(b=b.charAt(0).toUpperCase()+b.slice(1),void 0!==e[b])return b;for(d=0;d',c)}k.addRule(".spin-vml","behavior:url(#default#VML)"),h.prototype.lines=function(a,d){function f(){return e(c("group",{coordsize:k+" "+k,coordorigin:-j+" "+-j}),{width:k,height:k})}function h(a,h,i){b(m,b(e(f(),{rotation:360/d.lines*a+"deg",left:~~h}),b(e(c("roundrect",{arcsize:d.corners}),{width:j,height:d.scale*d.width,left:d.scale*d.radius,top:-d.scale*d.width>>1,filter:i}),c("fill",{color:g(d.color,a),opacity:d.opacity}),c("stroke",{opacity:0}))))}var i,j=d.scale*(d.length+d.width),k=2*d.scale*j,l=-(d.width+d.length)*d.scale*2+"px",m=e(f(),{position:"absolute",top:l,left:l});if(d.shadow)for(i=1;i<=d.lines;i++)h(i,-2,"progid:DXImageTransform.Microsoft.Blur(pixelradius=2,makeshadow=1,shadowopacity=.3)");for(i=1;i<=d.lines;i++)h(i);return b(a,m)},h.prototype.opacity=function(a,b,c,d){var e=a.firstChild;d=d.shadow&&d.lines||0,e&&b+d>1)+"px"})}for(var i,k=0,l=(f.lines-1)*(1-f.direction)/2;k= expretention) { 26 | logc("Seems to work RP "+files.length+" >= "+expretention,"green") 27 | } 28 | else 29 | { 30 | logc("Engine is for sure not performing correctly","red") 31 | } 32 | 33 | if(config.compressionDelta) 34 | { 35 | inc = config.sourceSize*(config.compressionDelta/100)*(config.changeRate/100) 36 | } 37 | 38 | for(var counter=0;counter < files.length;counter = counter + 1 ) { 39 | var f=files[counter] 40 | var data = f.getDataStats().f() 41 | if((new RegExp("[.]vbk$")).test(f.file)) 42 | { 43 | fullcount++ 44 | if(data >= datamm.fullmin && datamm.fullmax >= data) 45 | { 46 | logc(f.pointid+" "+f.file+" >> "+filesize(data) + " =~ "+filesize(datamm.fullmax),"green") 47 | } 48 | else 49 | { 50 | logc("!!!!!!!!!!! Point might be size invalid"+f.pointid+" "+f.file+" >> "+filesize(data)+ " !!=~ "+filesize(datamm.fullmax),"red") 51 | } 52 | } else { 53 | if(data >= datamm.incmin && datamm.incmax >= data) 54 | { 55 | logc(f.pointid+" "+f.file+" >> "+filesize(data) + " =~ "+filesize(datamm.incmax ),"green") 56 | } 57 | else 58 | { 59 | logc("!!!!!!!!!!! Point might be size invalid"+f.pointid+" "+f.file+" >> "+filesize(data) + " !=~ "+filesize(datamm.incmax ),"red") 60 | } 61 | } 62 | } 63 | if( fullcount <= fulls.max && fullcount >= fulls.min) 64 | { 65 | logc("Expected "+fulls.min+"-"+fulls.max+" fulls, seems ok","green") 66 | } 67 | else 68 | { 69 | logc("Expected "+fulls.min+"-"+fulls.max+" fulls","red") 70 | } 71 | } 72 | function execTest(engine,config,endIn) 73 | { 74 | var backupResult = pureEngine.VeeamBackupResultObject() 75 | var start = moment().add({days:1}).startOf('day').add({hours:22}); 76 | var end = endIn 77 | engine.reset() 78 | if(end === undefined) { end = engine.predictEndDate(backupConfiguration,start.clone(),interval) } 79 | engine.run(config,backupResult,start,interval,end) 80 | return backupResult 81 | } 82 | 83 | 84 | 85 | var backupstyle = 0 86 | var backupResult = 0 87 | var retention = 14 88 | var sourceSize = (1000*1024*1024*1024) 89 | var interval = {hours:24} 90 | var datamm = dataSize(sourceSize,50,10,0,0) 91 | 92 | //reverse test 93 | backupstyle = 2 94 | retention = 14 95 | var backupConfiguration = pureEngine.VeeamBackupConfigurationObject(backupstyle,retention,sourceSize); 96 | backupConfiguration.activeWeek = [0,0,0,0,0,0,1,0] 97 | backupConfiguration.compression = 50 98 | backupConfiguration.changeRate = 10 99 | datamm = dataSize(sourceSize,50,10,0,0) 100 | backupResult = execTest(engineObject,backupConfiguration) 101 | 102 | validaterps(backupConfiguration,backupResult,retention,{min:3,max:3},datamm) 103 | 104 | //fwd with 1 week 105 | backupstyle = 1 106 | retention = 2 107 | var backupConfiguration = pureEngine.VeeamBackupConfigurationObject(backupstyle,retention,sourceSize); 108 | backupConfiguration.activeWeek = [0,0,0,0,0,0,1,0] 109 | backupConfiguration.compression = 50 110 | backupConfiguration.changeRate = 10 111 | datamm = dataSize(sourceSize,50,10,0,0) 112 | backupResult = execTest(engineObject,backupConfiguration) 113 | validaterps(backupConfiguration,backupResult,(retention+6),{min:2,max:2},datamm) 114 | 115 | //fwd with 1 month 116 | backupstyle = 1 117 | retention = 2 118 | var backupConfiguration = pureEngine.VeeamBackupConfigurationObject(backupstyle,retention,sourceSize); 119 | backupConfiguration.activateAllMonths() 120 | backupConfiguration.compression = 50 121 | backupConfiguration.changeRate = 10 122 | datamm = dataSize(sourceSize,50,10,0,0) 123 | backupResult = execTest(engineObject,backupConfiguration) 124 | validaterps(backupConfiguration,backupResult,(retention+30),{min:2,max:2},datamm) 125 | 126 | //forever incremental 127 | backupstyle = 1 128 | retention = 14 129 | var backupConfiguration = pureEngine.VeeamBackupConfigurationObject(backupstyle,retention,sourceSize); 130 | backupConfiguration.compression = 50 131 | backupConfiguration.changeRate = 10 132 | datamm = dataSize(sourceSize,50,10,0,0) 133 | backupResult = execTest(engineObject,backupConfiguration) 134 | validaterps(backupConfiguration,backupResult,14,{min:1,max:1},datamm) 135 | 136 | //gfs 137 | backupstyle = 3 138 | retention = 14 139 | var backupConfiguration = pureEngine.VeeamBackupConfigurationObject(backupstyle,retention,sourceSize); 140 | backupConfiguration.GFS = {"W":6,"M":0,"Q":0,"Y":0} 141 | backupConfiguration.compression = 50 142 | backupConfiguration.changeRate = 10 143 | datamm = dataSize(sourceSize,50,10,0,0) 144 | backupResult = execTest(engineObject,backupConfiguration) 145 | validaterps(backupConfiguration,backupResult,retention+6,{min:7,max:7},datamm) 146 | 147 | //gfs multi shared 148 | backupstyle = 3 149 | retention = 14 150 | var backupConfiguration = pureEngine.VeeamBackupConfigurationObject(backupstyle,retention,sourceSize); 151 | backupConfiguration.GFS = {"W":6,"M":7,"Q":5,"Y":1} 152 | backupConfiguration.compression = 50 153 | backupConfiguration.changeRate = 10 154 | datamm = dataSize(sourceSize,50,10,0,0) 155 | backupResult = execTest(engineObject,backupConfiguration) 156 | validaterps(backupConfiguration,backupResult,retention+14,{min:15,max:17},datamm) 157 | 158 | 159 | //growth calculation 160 | backupstyle = 1 161 | retention = 14 162 | var backupConfiguration = pureEngine.VeeamBackupConfigurationObject(backupstyle,retention,sourceSize); 163 | backupConfiguration.compression = 50 164 | backupConfiguration.changeRate = 10 165 | backupConfiguration.simpleYearGrowth = 10 166 | datamm = dataSize(sourceSize,50,10,10,3) 167 | backupResult = execTest(engineObject,backupConfiguration,moment().add({years:3})) 168 | validaterps(backupConfiguration,backupResult,14,{min:1,max:1},datamm) 169 | 170 | //gfs multi shared growth 171 | backupstyle = 3 172 | retention = 14 173 | var backupConfiguration = pureEngine.VeeamBackupConfigurationObject(backupstyle,retention,sourceSize); 174 | backupConfiguration.GFS = {"W":6,"M":7,"Q":5,"Y":1} 175 | backupConfiguration.compression = 50 176 | backupConfiguration.changeRate = 10 177 | datamm = dataSize(sourceSize,50,10,10,3) 178 | backupConfiguration.simpleYearGrowth = 10 179 | backupResult = execTest(engineObject,backupConfiguration,moment().add({years:3})) 180 | validaterps(backupConfiguration,backupResult,retention+14,{min:15,max:17},datamm) -------------------------------------------------------------------------------- /test_gfsv9.js: -------------------------------------------------------------------------------- 1 | var moment = require('./moment.min.js'), 2 | filesize = require('./filesize-mod.js'), 3 | pureEngine = require('./pureengine.js'); 4 | 5 | var engineObject = pureEngine.VeeamPureEngine() 6 | 7 | function logc(text,color) 8 | { 9 | //http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/x329.html 10 | normal = "\033[0;37m" 11 | prefix = normal 12 | 13 | if(color == "red") { prefix = "\033[1;31m" } 14 | else if (color == "green") { prefix = "\033[1;32m"} 15 | else if (color == "yellow") { prefix = "\033[1;33m"} 16 | 17 | console.log(prefix+text+normal) 18 | } 19 | 20 | function runtest(start,end,backupConfiguration) { 21 | var current = start.clone() 22 | var previous = start.clone().subtract(1,'days') 23 | console.log(current.format("dddd YYYY-MM-DD T HH")) 24 | 25 | while (current <= end) { 26 | //logc("\n"+current.format("YYYY-MM-DDTHHmmss"),"green") 27 | markers = engineObject.getGFSMarkers(backupConfiguration,previous,current) 28 | if (markers.touched) { 29 | builder = "" 30 | $.each(["w","m","q","y"], function(key,val) { 31 | if(markers[val] > 0) { 32 | builder += "\t"+val+markers[val+"gfs"].format("YY-MM-DDTHHmmss \t") 33 | } else { 34 | builder += "\t " 35 | } 36 | }) 37 | logc(previous.format("dddd YYYY-MM-DDTHHmmss \t")+" - !! Current :::"+current.format("dddd YYYY-MM-DDTHHmmss \t"),"green") 38 | logc(builder) 39 | console.log("\n") 40 | console.log("\n") 41 | } 42 | previous = current.clone() 43 | current = current.add(1,"days") 44 | } 45 | console.log("\n") 46 | } 47 | 48 | var start = moment("2012-12-15 22:00:00") 49 | var end = moment("2016-02-15 22:00:00") 50 | 51 | 52 | var backupConfiguration = pureEngine.VeeamBackupConfigurationObject(3,14,1000); 53 | backupConfiguration.GFS = {"W":0,"M":4,"Q":5,"Y":5} 54 | backupConfiguration.GFSWeeklyDay = 6 55 | 56 | //backupConfiguration.GFSMonthlyDayOfMonth = 15 57 | backupConfiguration.GFSMonthlyDay = 6 58 | backupConfiguration.GFSMonthlyMonthWeek = 1 59 | 60 | //backupConfiguration.GFSQuarterlyDayOfMonth = 31 61 | //backupConfiguration.GFSQuarterlyMonth = 2 62 | backupConfiguration.GFSQuarterlyDay = 6 63 | backupConfiguration.GFSQuarterlyQuarterWeek = 1 64 | 65 | //backupConfiguration.GFSYearlyDayOfMonth = 31 66 | //backupConfiguration.GFSYearlyMonth = 1 67 | backupConfiguration.GFSYearlyDay = 6 68 | backupConfiguration.GFSYearlyDayWeek = 2 69 | 70 | runtest(start.clone(),end.clone(),backupConfiguration) 71 | 72 | -------------------------------------------------------------------------------- /test_gfsv9active.js: -------------------------------------------------------------------------------- 1 | var moment = require('./moment.min.js'), 2 | filesize = require('./filesize-mod.js'), 3 | pureEngine = require('./pureengine.js'), 4 | logc = require('./test_pretty.js'); 5 | 6 | var engineObject = pureEngine.VeeamPureEngine() 7 | engineObject.loglevel = 3 8 | 9 | function runtest(start,interval,end,config,engine) { 10 | var backupResult = pureEngine.VeeamBackupResultObject() 11 | engine.reset() 12 | engine.run(config,backupResult,start,interval,end) 13 | 14 | for(var c=0;c